使用java代码对ArrayList进行排序的方法分享

乔欣 Java经验 发布时间:2022-12-10 16:05:26 阅读数:20052 1
下文笔者将使用示例的方式讲述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);
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaJingYan/202212/16706618745104.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者