public class TreeSetTest {
public static void main(String[] args) {
//1: 自然排序接口 Comparable, 实现 compareTo(o1) 方法
//创建集合对象
//TreeSet<Person> ts = new TreeSet<Person>();
//2: 比较器接口 Comparator, 实现 compare(o1, o2)方法
public class TreeSetTest {
public static void main(String[] args) {
//1: 自然排序接口 Comparable, 实现 compareTo(o1) 方法
//创建集合对象
//TreeSet<Person> ts = new TreeSet<Person>();
//2: 比较器接口 Comparator, 实现 compare(o1, o2)方法
TreeSet<Person> ts = new TreeSet<Person>(new Comparator<Person>() {
@Override
public int compare(Person p1, Person p2) {
System.out.println("12345");
//年龄
int num = p1.getAge() - p2.getAge();
//名字
int result = (num == 0) ? (p1.getName().compareTo(p2.getName())) : num ;
return result;
}
});
//添加元素到集合
ts.add(new Person("z张三", 18));
ts.add(new Person("w王五", 18));
ts.add(new Person("z赵六", 28));
ts.add(new Person("z赵六", 28));
ts.add(new Person("z赵六", 28));
//TreeMap
//遍历
for (Person p : ts) {
System.out.println(p.getName() + "--" + p.getAge());
}
}
});
//添加元素到集合
ts.add(new Person("z张三", 18));
ts.add(new Person("w王五", 18));
ts.add(new Person("z赵六", 28));
ts.add(new Person("z赵六", 28));
ts.add(new Person("z赵六", 28));
//TreeMap
//遍历
for (Person p : ts) {
System.out.println(p.getName() + "--" + p.getAge());
}
} |
|