ArrayList是一个数组队列,相当于动态数组。与java中的数组相比,它的容量可以动态增加。本文主要介绍Java中ArrayList的两种排序方法,有需要的朋友可以参考一下。
目录
前言1。ArrayList使用排序2的初衷。对数组列表中的数组进行排序。3.对多个数组列表中的元素进行排序和汇总。
前言
由于其功能性和灵活性,ArrayList是Java集合框架中使用最广泛的集合类之一。ArrayList是一个列表实现,其中使用了一个动态数组来存储元素,因此ArrayList可以在添加和删除元素时动态扩展和收缩。你可能已经用过ArrayList了,我就跳过基础部分。如果不熟悉ArrayList,可以参考它的API文档,很容易理解如何对ArrayList进行基本操作。
1.ArrayList使用排序的初衷。
我们知道ArrayList的好处是不需要限制容器的大小,它会根据元素的增加而自行扩展。但是,存储的数据类型将变成object。虽然每个元素都有自己的索引,但与数组的下标不同,它的操作更方便。然后我们平时学习如何选择排序,如何快速排序,如何对数组进行操作。最愚蠢的开始方式是将列表中的数据发送到数组,对其进行排序,然后将其发送回来。但是,效率真的不是降低几倍,而是几十倍。你真的不能这么做。我查了一些资料和案例,总结在这里。
2.对数组列表中的数组进行排序。
我们先来看看集合的帮助文档:
这里顺便补充一下ArrayList和Collection的关系:
具体使用代码如下:
导入Java . util . ArrayList;
导入Java . util . collections;
导入Java . util . scanner;
公共类包含
公共静态void main(String[] args) {
//TODO自动生成的方法存根
扫描仪扫描=新扫描仪(system . in);
int n;
ArrayList al=new ArrayList();
System.out.println('请输入所需数字');
n=scan . nextint();
System.out.println('请逐一输入');
for(int I=0;在;i ) {
al.add(i,scan . nextint());
}
System.out.println('您输入的数字是:');
for(int I=0;ial . size();i ) {
int temp=(int)al . get(I);
system . out . print(temp ' ');
}
collections . sort(al);//对数组列表中的数据进行排序
system . out . println();
System.out.println('排序后:');
for(int I=0;ial . size();i ) {
int temp=(int)al . get(I);
system . out . print(temp ' ');
}
}
}
运行结果:
3.多个ArrayList中的元素进行排序
类SortByName实现比较器{
公共int比较(对象o1,对象o2) {
学生s1=(学生)O1;
学生s2=(学生)O2;
返回s1.getName()。compare to(S2 . getname());
}
}
类SortByAge实现比较器{
公共int比较(对象o1,对象o2) {
学生s1=(学生)O1;
学生s2=(学生)O2;
返回s1.getAge()。compare to(S2 . getage());
//if (s1.getAge() s2.getAge())
//返回1;
//return-1;
}
}
总结
这就是这篇关于java中两种数组列表的文章。有关java ArrayList排序方法的更多信息,请搜索我们以前的文章或继续浏览下面的相关文章。希望你以后能支持我们!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。