TreeSet

TreeSet为使用树来进行存储的Set接口提供了一个工具,

对象按升序存储,访问和检索快

 

TreeSet的内部操作的底层数据是TreeMap,只是我们操作的是TreeMap的key

采用实现Comparable<person2>  里面重写compareTo(person2 o)  来比较   通过这方法排序,没有用会报错

package com.Set;

import java.util.Iterator;
import java.util.TreeSet;

public class TreeSetDemo {
   public static void main(String[] args) {
    TreeSet<person2> pSet=new TreeSet<person2>();
    pSet.add(new person2("张三",20));
    pSet.add(new person2("李四",22));
    pSet.add(new person2("张三",20));
    Iterator<person2> it   =pSet.iterator();
    while (it.hasNext()) {
        person2 person2 =it.next();
        System.out.println(person2.getName()+person2.getAge());
    }
    
}
}

class person2 implements Comparable<person2>{
   private String name;
   private int age;
   
    
    public person2(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;
}


    @Override
    public int compareTo(person2 o) {
        if(this.age-o.getAge()<0) {
          return -1;    
        }else if(this.age-o.getAge()>0){
            return 1;
        }
        return 0;
    }
    
}
posted @ 2018-11-20 21:19  言西早石头侠  阅读(175)  评论(0编辑  收藏  举报