Arraylist如何实现排序

 时间:2024-11-17 04:00:36

1、总结:使用Collections.sort()传入ArrayList,会采用默认的方式进行排序(字典序)使用Collections.sort()传入ArrayList和自己实现Commparator接口的类的对象,实现自定义排序

Arraylist如何实现排序

2、使用List.sort()传入自己实现Commparator接口的类的对象,实现自定义排序Comparator返回值在jdk1.7、jdk1.8里必须是一对相反数,如1和-1,不能是1和0.因为1.7的排序算法采用timsort,对返回值有严格要求http://baike.baidu.com/link?url=UCowuf65GHz3cWVf_d7t0QzYUCcwU0QUwserNTIrImlaTBvBAaVfywzppQ70DqWKzUu3dPqsF21k9IDpT8QPE_

Arraylist如何实现排序

3、importjava.util.*;publicclassTestArrayListSort{@SuppressWarnings("unchecked")publicstaticvoidmain(String[]args){//TODOAuto-generatedmethodstubListlistInt=newArrayList(),listStr=newArrayList();//自定义Comparator对象,自定义排序Comparatorc=newComparator<Integer>(){@Overridepublicintcompare(Integero1,Integero2){//TODOAuto-generatedmethodstubif((int)o1<(int)o2)return1;//注意!!返回值必须是一对相反数,否则无效。jdk1.7以后就是这样。//elsereturn0;//无效elsereturn-1;}

Arraylist如何实现排序

4、 };listInt.add(2);listInt.add(4);listInt.add(9);listInt.add(5);listStr.add("haha");listStr.add("hehe");listStr.add("ao");listStr.add("Ti");@SuppressWarnings("rawtypes")Listlist01=newArrayList(listInt);Listlist02=newArrayList(listInt);Collections.sort(listInt);Collections.sort(listStr);list01.sort(c);Collections.sort(list02,c);System.out.println(listInt);System.out.println(listStr);System.out.println(list01);System.out.println(list02);}}

Arraylist如何实现排序

5、输出:[2, 4, 5, 9][Ti, ao, haha, hehe][9, 5, 4, 2][9, 5, 4, 2]

Arraylist如何实现排序
  • 如何治疗肾炎
  • 怎么跟家人分享宝宝照片最靠谱
  • 自立自强手抄报简单又漂亮
  • 怎样从嗅觉和味觉上帮助低敏感度的自闭症患者
  • 怎样减少或防止牛仔裤褪色的方法
  • 热门搜索
    托福考试带什么 准贷记卡是什么意思 木讷的意思 嬴渠梁是嬴政的什么 泰国买什么便宜 开水果店需要什么手续 环球黑卡有什么用 中签后什么时候上市 掌掴是什么意思 directx有什么用