在List的排序中常用的是Collections.sort()方法,可以对String类型和Integer类型泛型的List集合进行排序。

首先演示sort()方法对Integer类型泛型的List排序

 /*
* 通过Collections.sort()方法,对Integer类型的泛型List进行排序
*/
public void testSort1(){
List<Integer> integerList = new ArrayList<Integer>();
//插入100以内的十个随机数
Random ran = new Random();
Integer k;
for(int i=0;i<10;i++){
do{
k = ran.nextInt(100);
}while(integerList.contains(k));
integerList.add(k);
System.out.println("成功添加整数"+k);
} System.out.println("\n-------排序前------------\n"); for (Integer integer : integerList) {
System.out.print("元素:"+integer);
}
Collections.sort(integerList);
System.out.println("\n-------排序后------------\n");
for (Integer integer : integerList) {
System.out.print("元素:"+integer);
}
}

打印输出的结果为:

成功添加整数4
成功添加整数56
成功添加整数85
成功添加整数8
成功添加整数14
成功添加整数89
成功添加整数96
成功添加整数0
成功添加整数90
成功添加整数63 -------排序前------------ 元素:4元素:56元素:85元素:8元素:14元素:89元素:96元素:0元素:90元素:63
-------排序后------------ 元素:0元素:4元素:8元素:14元素:56元素:63元素:85元素:89元素:90元素:96

对String类型泛型的List进行排序

 /*
* 对String泛型的List进行排序
*/
public void testSort2(){
List<String> stringList = new ArrayList<String>();
stringList.add("imooc");
stringList.add("lenovo");
stringList.add("google");
System.out.println("\n-------排序前------------\n");
for (String str : stringList) {
System.out.print("元素:"+str);
}
Collections.sort(stringList);
System.out.println("\n-------排序后------------\n");
for (String str : stringList) {
System.out.print("元素:"+str);
}
}

打印输出的结果为:

-------排序前------------

元素:imooc元素:lenovo元素:google
-------排序后------------ 元素:google元素:imooc元素:lenovo

使用sort()方法对String类型泛型的List进行排序时,首先是判断首字母的顺序,首字母相同时再判断其后面的字母顺序,具体的排序规则为:

1、数字0-9;

2、大写字母A-Z;

3、小写字母a-z

Java中使用Collections.sort()方法对数字和字符串泛型的LIst进行排序的更多相关文章

  1. python 中的sort 和java中的Collections.sort()函数的使用

    x=[1,2,3] x.sort()对的,x这个都变了 y=x.sort()错误 y=sorted(x)对的,x拍好序的一个副本 python中用匿名函数和自定义函数排序:(很奇怪的是比较函数返回的是 ...

  2. 用Java集合中的Collections.sort方法对list排序的两种方法

    用Collections.sort方法对list排序有两种方法第一种是list中的对象实现Comparable接口,如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ...

  3. 在Java中使用Collections.sort 依据多个字段排序

    一.如何使用Collections工具类进行排序 使用Collections工具类进行排序主要有两种方式: 1.对象实现Comparable接口,重写compareTo方法 /** * @author ...

  4. java中Collections.sort()方法实现集合排序

    1.Integer/String泛型的List进行排序 List <Integer> integerlist = new ArrayList<Integer>();   //定 ...

  5. Java—集合框架 Collections.sort()、Comparable接口和Comparator接口

    Collentions工具类--java.util.Collections Collentions是Java集合框架中,用来操作集合对象的工具类,也是Java集合框架的成员,与List.Map和Set ...

  6. 【Java】Java中的Collections类——Java中升级版的数据结构【转】

    一般来说课本上的数据结构包括数组.单链表.堆栈.树.图.我这里所指的数据结构,是一个怎么表示一个对象的问题,有时候,单单一个变量声明不堪大用,比如int,String,double甚至一维数组.二维数 ...

  7. Java中的Collections类

    转载:https://blog.csdn.net/yangxingpa/article/details/80515963 从[Java]Java中的Collections类——Java中升级版的数据结 ...

  8. Collections.sort方法对list排序的两种方式

    Collections.sort( )分为两部分,一部分为排序规则,一部分为排序算法 . 规则用来判断对象,算法则考虑如何进行排序 对于自定义对象,sort()不知道规则,所以无法比较,这种情况下一定 ...

  9. python中List的sort方法的用法

    python列表排序 简单记一下python中List的sort方法(或者sorted内建函数)的用法. 关键字: python列表排序 python字典排序 sorted List的元素可以是各种东 ...

随机推荐

  1. Python开发【第十一篇】:JavaScript

    JavaScript是一门编程语言,浏览器内置了JavaScript语言的解释器,所以在浏览器上按照JavaScript语言的规则编写相应代码之,浏览器可以解释并做出相应的处理. 一.如何编写 1.J ...

  2. Thinkphp 整理备忘 杂记

    1:输出变量函数  (手册目录:控制器-输出变量) I('变量类型.变量名',['默认值'],['过滤方法'],['额外数据源']) 例:$title = I('post.title','','str ...

  3. Markdown语言详解

    相信大家在github上面分享了不少的项目和Demo,每次创建新项目的时候,使用的都是默认的README.md文件,也不曾对这个文件有过什么了解.但是在看到别人写的项目的README.md里面竟然有图 ...

  4. Java继承和多态实例

    我们知道面向对象的三大特性是封装.继承和多态.然而我们有时候总是搞不清楚这些概念.下面对这些概念进行整理, 为以后面向抽象的编程打下坚实的基础. 封装的概念还是很容易理解的.如果你会定义类,那么相信你 ...

  5. vim基础命令

    2015-06-04 by komilevim基础命令 打开一个文件 vim index.php 几种模式说明Normal Mode也就是最一般的普通模式,默认进入vim之后,处于这种模式.Inser ...

  6. 字符编码详解及由来(UNICODE,UTF-8,GBK)

        一直对字符的各种编码方式懵懵懂懂,什么ANSI.UNICODE.UTF-8.GB2312.GBK.DBCS.UCS--是不是看的很晕,假如您细细的阅读本文你一定可以清晰的理解他们.Let's ...

  7. PHP 数组的遍历的几种方式(以及foreach与for/while+each效率的比较)

    * 使用foreach遍历数组时要注意的问题: * 1.foreach在遍历之前会自动重置指针使用其指向第一个元素,所以foreach可以多次遍历 * 2.foreach遍历完成之后,指针是没有指向数 ...

  8. vc++6.0各种报错合集(附:VC++6.0调出打印窗口的方法)

    背景: 由于VC++6.0对于现在的我来说,只是一个工具,暂时没有太多的时间分配到这块去深究它,由于不明其原理,因此也只是在此把错误积累下来,以备下次相同错误出现时能快速排除,节省时间. 正文 一.出 ...

  9. APPCAN MAS接口之AJAX

    1.打开APPCAN IDE,文件→新建→MAS服务 2.新建MAS项目 3.新建MAS接口,访问地址http://mobile.163.com/special/chuangye/ 4.修改if_cy ...

  10. zepto触摸事件解决方法

    移动项目开发过程中,经常需要用到滑动的事件来处理一些效果.通常情况下,我们会通过  touchstart->touchmove->touchend  的过程来定义这个事件.这些事件的触发顺 ...