// 数组定义,初始化
int[] array = new int[]{1, 2, 2, 1};
int[] dest = new int[10];
Integer[] soul = new Integer[]{10,3,1,5}; // 获取子数组
int[] subArray = Arrays.copyOf(array, 3);
int[] subarr = Arrays.copyOfRange(array, 1, 3); // 数组复制
System.arraycopy(array, 0, dest, 0, 2); // 排序,Arrays.sort默认是升序排列
Arrays.sort(array); // 默认升序 // 编译错误,指定array order,但是指定排序的话必须是包装类型,不支持基本类型
// Arrays.sort(array, Collections.reverseOrder()); // 包装类型,降序排列
Arrays.sort(soul, Collections.reverseOrder()); // 降序排列
Arrays.sort(soul, (v1, v2) -> v2 - v1); // 使用lambda表达式设置排列顺序 // 注:Arrays.asList 可以将array转为list

数组元素自定义排序

        // idea里提示可以优化,优化后的是这种
Arrays.sort(arr, Comparator.comparingInt(o -> o[0]));
// lambda表达式
Arrays.sort(arr, (o1, o2) -> (o1[0] - o2[0]));
     // 原始比较器
Arrays.sort(arr, new Comparator<int[]>() {
@Override
public int compare(int[] o1, int[] o2) {
return o1[0] - o2[0];
}
});

java中数组操作,正序,逆序,子数组、自定义排序的更多相关文章

  1. C#数组的排序(正序逆序)

    C#数组的排序(正序逆序) 这种排序 超级简单的 ! using System; using System.Collections.Generic; using System.Linq; using ...

  2. Java中创建操作文件和文件夹的工具类

    Java中创建操作文件和文件夹的工具类 FileUtils.java import java.io.BufferedInputStream; import java.io.BufferedOutput ...

  3. Java课程课后作业190315之从文档中读取随机数并得到最大连续子数组

    从我上一篇随笔中,我们可以得到最大连续子数组. 按照要求,我们需要从TXT文档中读取随机数,那在此之前,我们需要在程序中写入随机数 import java.io.File; import java.i ...

  4. java中把list列表转为arrayList以及arraylist数组截取的简单方法

    java中把list列表转为arrayList以及arraylist数组截取的简单方法 package xiaobai; import java.util.ArrayList; import java ...

  5. js中字符串转数组,数组转字符串及逆序的方法

    var str = "a,b,c,d,e,f,g";//声明一个字符串 str = str.split(',').reverse();//用split函数拆分成数组对象,再用rev ...

  6. C# 正则表达式中的顺序环视和逆序环视

    环视结构不匹配任何字符,只匹配文本中的特定位置. 顺序环视:从左向右查看文本,尝试匹配子表达式,如果能够匹配则返回匹配成功信息.顺序环视使用「 (?=...) 来标识」,例如「 (?=\d) 」,它表 ...

  7. oracle 正序 逆序 排序查询

    正序:从小到大 order by t.id asc 逆序:从大到小 order by t.id desc

  8. java中文件操作《一》

    在日常的开发中我们经常会碰到对文件的操作,在java中对文件的操作都在java.io包下,这个包下的类有File.inputStream.outputStream.FileInputStream.Fi ...

  9. java中的集合类详情解析以及集合和数组的区别

    数组和链表 数组:所谓数组就是相同数据类型的元素按照一定顺序排列的集合. 它的存储区间是连续的,占用内存严重,所以空间复杂度很大,为o(n),但是数组的二分查找时间复杂度很小为o(1). 特点是大小固 ...

  10. File类的特点?如何创建File类对象?Java中如何操作文件内容,什么是Io流Io流如何读取和写入文件?字节缓冲流使用原则?

    重难点提示 学习目标 1.能够了解File类的特点(存在的意义,构造方法,常见方法) 2.能够了解什么是IO流以及分类(IO流的概述以及分类) 3.能够掌握字节输出流的使用(继承体系结构介绍以及常见的 ...

随机推荐

  1. srcrpy手机投屏软件

    1,先在pc上下载和压缩投屏软件 2,在安卓手机上设置打开开发者模式 (usb是需要插线的,如果要无线连接就用adb)

  2. ES6-Promise下

    六.实例的finally方法: promise状态发生变化指的是由初始态变成成功或者失败态 处理错误指的是没有调用catch(失败态实例调用可以执行其回调的then) finally里面的回调函数只要 ...

  3. SourceInsight4.0修改字体大小

    SourceInsight4.0修改字体大小 1.右键Options->Preferences.如图所示,然后找到Syntax Decorations选项,点击File Types 2.点击Fi ...

  4. Scala集合排序

    Scala集合排序有三种方法:sorted.sortBy().sortWith() (1)sorted 对一个集合进行自然排序,通过传递隐式的Ordering源码中有两点值得注意的地方:1.sorte ...

  5. hive复制表

    create table talbe_copy as select * from talbe_origin;

  6. python翻译(二)

    百度翻译,通过设置参数可可以实现翻译为指定语种 baidujs1.js var i = "320305.131321201" function n(r, o) { for (var ...

  7. Java反射获取方法参数名

      正常环境下,获取不到参数的名称,使用java反射时,第一个参数名是arg0,第二个参数是arg1,与我们代码中写的对不上. java反射过程中,需要我们做好判断: if(!parameter.is ...

  8. Java字段名由驼峰命名转换为下划线命名

    private String toUnderlineName(String name) { StringBuilder result = new StringBuilder(); if (name = ...

  9. Maven使用相关

    #Maven使用 [1] [2] mvn archetype:generate -DgroupId=com.companyname.bank -DartifactId=consumerBanking ...

  10. shell转义字符

    \n      回车 \b      单词边界 \w      [a-Z0-9]中任意一个字符 \W      [^a-Z0-9] \d      [0-9]中任意一个数字 \D      [^0-9 ...