package com.itheima.demo04.Collections;
import java.util.ArrayList;
import java.util.Collections;
/*
java.utils.Collections是集合工具类,用来对集合进行操作。部分方法如下:
public static <T> void sort(List<T> list):将集合中元素按照默认规则排序。
public static <T> void sort(List<T> list,Comparator<? super T> ):将集合中元素按照指定规则排序
注意:
sort(List<T> list)适用前提
被排序的集合里面存储的元素,必须实现Comparable,重写接口中的方法compareTo定义排序规则
*/
public class Demo02Sort {
public static void main(String[] args) {
ArrayList<Integer> list = new ArrayList<>();
list.add(1);
list.add(3);
list.add(2);
System.out.println(list);
//public static <T> void sort(List<T> list):将集合中元素按照默认规则排序。
Collections.sort(list);
System.out.println(list);
ArrayList<Person> list01 = new ArrayList<>();
list01.add(new Person("zhangsan", 17));
list01.add(new Person("lisi", 20));
list01.add(new Person("wangwu", 14));
System.out.println(list01);
Collections.sort(list01);
System.out.println(list01);
}
}
class Person implements Comparable<Person> {
private String name;
private int age;
@Override
public String toString() {
return "Person{" +
"name='" + name + '\'' +
", 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;
}
public Person() {
}
public Person(String name, int age) {
this.name = name;
this.age = age;
}
//重写排序规则
@Override
public int compareTo(Person o) {
return this.getAge() - o.getAge();
}
}