一、Collection集合方法---排序方法1
    public static <T extends Comparable<? super T>> void sort(List<T> list)
        根据元素的自然顺序对指定列表按升序进行排序。
二、 注意:
     1、对基本数据或者字符串默认使用的是升序排列。
     2、如果需要对自定义类进行排序,需要实现comparable,重写接口中的方法compareTo,自己定义排序的规则, 根据返回值决定升序还是降序,自己(this)-参数:升序
     3、可以在方法compareTo中设置多级条件排序,原理是利用前一次的条件相等就启用后一次条件

三、举例

Collections02Person.java

public class Collections02Person implements Comparable<Collections02Person>{String name;int age;/*自己构造排序方法,其实可以利用返回条件设置多级排序* */@Overridepublic int compareTo(Collections02Person c) {return this.getAge()-c.getAge();//比较年龄大小来作为排序//return 0;//返回0就认为相等}public Collections02Person() {}@Overridepublic String toString() {//Collections02Personreturn "{" +"name='" + name + '\'' +", age=" + age +'}';}public Collections02Person(String name, int age) {this.name = name;this.age = age;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}}

Collections02.java

import java.util.ArrayList;
import java.util.Collections;public class Collections02 {public static void main(String[] args) {ArrayList<Integer> listI = new ArrayList<>();Collections.addAll(listI,1,3,2,4,5,3,1);System.out.println("整形排序前:");System.out.println(listI);System.out.println("整形排序后:");Collections.sort(listI);System.out.println(listI);ArrayList<String> listS = new ArrayList<>();Collections.addAll(listS,"abs","bas","aas","bbs");System.out.println("字符排序前");System.out.println(listS);System.out.println("字符排序后");Collections.sort(listS);System.out.println(listS);ArrayList<Collections02Person> cp = new ArrayList<>();Collections.addAll(cp,new Collections02Person("张珊",14),new Collections02Person("李思",12),new Collections02Person("王五",11),new Collections02Person("赵柳",15),new Collections02Person("林奇",15));System.out.println("自定义类排序前");System.out.println(cp);System.out.println("自定义排序后");Collections.sort(cp);System.out.println(cp);}}

输出:

整形排序前:
[1, 3, 2, 4, 5, 3, 1]
整形排序后:
[1, 1, 2, 3, 3, 4, 5]
字符排序前
[abs, bas, aas, bbs]
字符排序后
[aas, abs, bas, bbs]
自定义类排序前
[{name='张珊', age=14}, {name='李思', age=12}, {name='王五', age=11}, {name='赵柳', age=15}, {name='林奇', age=15}]
自定义排序后
[{name='王五', age=11}, {name='李思', age=12}, {name='张珊', age=14}, {name='赵柳', age=15}, {name='林奇', age=15}]

58、JAVA Collections集合排序相关静态方法---方法1相关推荐

  1. Java 8 集合排序的 10 个姿势

    今天栈长就分享 Java 8 进行排序的 10 个姿势,原来还有这么多排序技巧,其实就是把 Java 8 中的 Lambda.Stream.方法引用等知识点串起来,栈长的同事直呼还看不懂.. 传统排序 ...

  2. java中集合排序的常用方法总结

    前言      1.集合元素为数字      2.集合元素为对象 前言 平常的开发需求中肯定会遇到对集合排序问题,最常见的排序是在持久层中使用sql进行排序,但是由于业务限制或是其他原因,不能在持久层 ...

  3. Java中集合拥有的共性方法

    在Java中集合的共性方法 1.在Java中集合作为最顶层的集合,他拥有所有集合有的共性方法.所以在定义实现类的时候可以使用多态. 集合拥有的共性方法: public boolean add(E e) ...

  4. Collections集合工具类的方法_sort(List,Comparator)

    简述Comparable和Comparator两个接口的区别. Comparable:强行对实现它的每个类的对象进行整体排序.这种排序被称为类的自然排序,类的compareTo方法被称为它的自然比较方 ...

  5. Collections集合工具类的方法_sort(List)

    Comparator比较器 我们还是先研究这个方法 public static <T> void sort(List<T> list):将集合中元素按照默认规则排序. 不过这次 ...

  6. Collections集合工具类的方法_addAllshuffle

    Collections 常用功能 java.utils.Collections是集合工具类,用来对集合进行操作.部分方法如下: public static <T> boolean addA ...

  7. java map集合排序的_Java对Map集合进行排序

    Java对Map集合进行排序 实现 Comparator 接口,重写compare方法,完成自定义排序 int compare(Object o1, Object o2) 返回一个基本类型的整型 如果 ...

  8. Collections集合工具类的方法

    addAll & shuffle: 返回类型为boolean类型,执行完操作不接收也行: 其中,静态方法,与对象无关,类名点方法名直接调用: 点点点为可变参数,随便填写几个参数都可以: sor ...

  9. Java List集合排序,升序降序

    在C#开发中,如果一个List集合需要进行重新排序,直接Orderby即可,但是在Java中,思路一样,但是写法不一样,特记录,方便各位码友学习使用. 自己使用版本 List<UserInfo& ...

  10. Java常用集合排序

    1.list排序 List<String> list = new ArrayList<String>(Arrays.asList("Clinton",&qu ...

最新文章

  1. Design Pattern - Bridge(C#)
  2. spring mvc DispatcherServlet解读
  3. C#ListBox对Item进行重绘,包括颜色
  4. Linux命令之 mount -- 文件系统挂载
  5. 管理信息系统数据库设计标准(草稿)
  6. codeforces 136A-C语言解题报告
  7. 【java】httpclient 链接偶尔会 Read timed out
  8. 社区生鲜招团长,物业优势何以难施展?
  9. 用RT Server Customizer定制Windows 2008 R2安装光盘
  10. python内置模块在哪个文件夹_用 Python 内置模块处理 ini 配置文件
  11. 微信小程序直播为什么这么受欢迎
  12. 【PageHelper】实现拦截pageNum和pageSize
  13. 苹果几最好用_苹果quot;官方保险quot;再升级,屏幕两年可以碎4次,值么?
  14. 【飞控开发基础教程3】疯壳·开源编队无人机-串口(基础收发)
  15. 阿里api网关接口客户端demo,java实现源码,其他语言可参考
  16. 马云谈年轻人压力大:年轻人怕压力就白活了
  17. 移动端字体显示大小和css设置大小的不一致解决方案
  18. setInterval()的三种写法
  19. 高级JavaScript Day03 | 函数定义和调用、this、严格模式、高阶函数、闭包、递归
  20. 鼠标移动代码(使用光标健移动)

热门文章

  1. 数据结构 严蔚敏 第七章 查找 期末复习总结
  2. sqlserver Month()函数取日期不足两位的加 0(转载)
  3. 写给学生看的系统分析与验证笔记(十二)——验证ω-正则属性(Verifying ω-regular properties)
  4. oracle的多个exclude,expdp exclude 如何使用 - 同一schema下3000个表,要剔除其中400多张表...
  5. windows10自带我的文档等路径修改
  6. Oracle特殊符号
  7. A计划 骑士救公主迷宫
  8. 9:中文乱码处理-Java Web
  9. Android 应用在后台弹出提示相关的笔记1
  10. 苹果无需越狱(iPhone、iPad)手机多开教程