使用java代码对ArrayList进行排序的方法分享
下文笔者将使用示例的方式讲述Arraylist的排序方法分享,如下所示
下面是笔者采用三种方法对ArrayList进行排序的方法分享,如下所示
ArrayList简介
ArrayList是List接口的一个实现类 ArrayList是底层采用数组进行数据存储的一个有序集合 但是她和数组有一个不同就是,ArrayList是一个可变数组 所以我们日常使用ArrayList的频率非常高 她是我们日常开发中经常使用的数据存储容器 既然ArrayList是一个有序,我们是否可以采用一定的顺序对其进行排序呢? 下文笔者将一一道来,如下所示例:
下面是笔者采用三种方法对ArrayList进行排序的方法分享,如下所示
方式1:
直接调用Collections类中的sort()方法
/**@Description: 计算出ArrayList容器中
*最大的一个数 并返回
* @param: 无参
* @return int
* @author java265.com
*/
private static int randomNum() {
List list = new ArrayList();
//定义随机数变量
int num;
//生成0-18随机数
for (int i = 0; i < 18; i++) {
num = new Random().nextInt(18);
list.add(num);
}
//使用Collectios类中的静态方法sort()进行排序
Collectios.sort(list)
System.out.println(list);
方式2:
使用ArrayList的sort()实现
此时我们需传入一个比较器(Compartor<>)
List list = new ArrayList();
//定义随机数变量
int num;
//生成0-18随机数
for (int i = 0; i < 18; i++) {
num = new Random().nextInt(18);
list.add(num);
}
//排序
list.sort(new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
return o1-o2; //降序
// return o2-o1; //升序
}
});
System.out.println(list);
方式3:
特定场景下,借助stream对数据进行转换操作
List list = new ArrayList();
//定义随机数变量
int num;
//生成0-18随机数
for (int i = 0; i < 18; i++) {
num = new Random().nextInt(18);
list.add(num);
}
//转换成int[],然后进行排序
int[] arr = integers.stream().mapToInt(k-> (int) k).toArray();
Arrays.sort(arr);
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


