Java 杂谈

Java TreeMap 与 TreeSet

2018-05-10  本文已影响66人  聪明的奇瑞

TreeMap

用法

TreeMap<Integer,String> treeMap = new TreeMap<>();
treeMap.put(5,"b");
treeMap.put(1,"a");
treeMap.put(6,"c");
treeMap.forEach((k,v)->{
    System.out.println(k+" "+v);
});

TreeSet

TreeSet 用法

TreeSet<Integer> treeSet = new TreeSet<>();
treeSet.add(1);
treeSet.add(6);
treeSet.add(3);
treeSet.add(2);
treeSet.add(7);
treeSet.forEach(z->System.out.println(z));
public class Person implements Comparable<Person> {
    private String name;
    private Integer age;

    // .... 构造方法与 set、get 方法
    
    @Override
    public int compareTo(Person o) {
        if (this.age < o.getAge())
            return 1;
        return -1;
    }
}
TreeSet<Person> treeSet = new TreeSet<>();
treeSet.add(new Person("b",1));
treeSet.add(new Person("a",5));
treeSet.add(new Person("b",3));
treeSet.forEach(person -> System.out.println(person));
TreeSet<Person> treeSet = new TreeSet<>((o1,o2)->{
if (o1.getAge()>o2.getAge())
    return 1;
if (o1.getAge()==o2.getAge())
    return 0;
return -1;
});
treeSet.add(new Person("b",1));
treeSet.add(new Person("a",5));
treeSet.add(new Person("c",2));
treeSet.forEach(person -> System.out.println(person));
上一篇 下一篇

猜你喜欢

热点阅读