import java.util.ArrayList;
import java.util.List;
class Student {
private String name;
private Integer age;
public Student(String name, Integer age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
@Override
public String toString() {
return "Perosn [name=" + name + ", age=" + age + "]";
}
}
public class Test {
public static void main(String[] args) {
List<Student> students = new ArrayList<>();
students.add(new Student("abc", 12));
students.add(new Student("bcd", 20));
students.add(new Student("cde", 17));
students.add(new Student("def", 25));
students.add(new Student("efg", 15));
for (Student stu : students) {
System.out.println(stu);
}
}
}
在集合尾部添加元素
Student student = new Student("123", 12);
int endOfList = students.size();
students.add(endOfList, student);
Student [name=abc, age=12]
Student [name=bcd, age=20]
Student [name=cde, age=17]
Student [name=def, age=25]
Student [name=efg, age=15]
Student [name=123, age=12]
根据某个字段进行排序
students.sort((x, y) -> Integer.compare(x.getAge(), y.getAge()));
Student [name=abc, age=12]
Student [name=123, age=12]
Student [name=efg, age=15]
Student [name=cde, age=17]
Student [name=bcd, age=20]
Student [name=def, age=25]
根据某个属性去重
import static java.util.stream.Collectors.collectingAndThen;
import static java.util.stream.Collectors.toCollection;
import static java.util.Comparator.comparingLong;
List<Student> list = students.stream().collect(
collectingAndThen(
toCollection(() -> new TreeSet<>(comparingLong(Student::getAge))), ArrayList::new)
);
Student [name=abc, age=12]
Student [name=efg, age=15]
Student [name=cde, age=17]
Student [name=bcd, age=20]
Student [name=def, age=25]