public class LinkedHashSet<E> implements Set<E>
是具体的类dom
public class TreeSet implements NavigableSet<E>
public interface NavigableSet<E> extends SortedSet<E>
public interface SortedSet<E> extends Set<E>
是具体的类
一、TreeSet()元素有顺序,顺序规则取决于构造函数函数
若是想存储基本类型,必须用他们的包装类
例如存储整数只能用Integerthis
TreeSet<Integer> it = new TreeSet<Integer>();
与存入同序
不重复spa
public interface Comparable
自定义的类使用TreeSet须要实现Comparable接口,重写方法code
public class Student implements Comparable<Student>{ }
@Overwrite public int compareTo(Student o){ return 0; }
return 0;只输出第一个元素
return 1;输出的元素按升序
return -1;输出的元素
按年龄排序:对象
@Overwrite public int compareTo(Student o){ int num = this.age-o.age;//升序 //int num = o.age-this.age;//降序 return num; }
若是年龄相同,比较名字
名字是String类型,他已经实现了Comparable接口排序
@Overwrite public int compareTo(Student o){ int num = this.age-o.age;//升序 //int num = o.age-this.age;//降序 int num1 = num==0?this.name.compareTo(o.name):num; return num; }
有参构造方法中接收new comparator<E>,即comparator的对象 重写compare方法,注意主要条件和次要条件(三元运算符)
Random类的用法:建立对象,对象调用方法nextInt(bound)继承