1. 集合类总纲2. TreeSet
2.1 TreeSet 性质2.2 元素有序
2.2.1 使用默认排序2.2.2 自定义排序
2.2.2.1 自己构造比较器2.2.2.2 在 Student类里面就重写 compareTo()
1. 集合类总纲 2. TreeSet 2.1 TreeSet 性质TreeSet 是一个有序的Set 集合,可以按一定的规则指定元素的顺序。不能有重复元素。对象重写 equals() 和 hashcode() 失效。无序不重复 2.2 元素有序 2.2.1 使用默认排序
package javaweb.collection;
import java.util.Iterator;
import java.util.TreeSet;
public class MyTreeSet {
public static void practice1() {
TreeSet treeset = new TreeSet();
treeset.add("a");
treeset.add("c");
treeset.add("e");
treeset.add("f");
treeset.add("b");
Iterator it = treeset.iterator();
while(it.hasNext()) {
System.out.print(it.next() + " ");
}
}
public static void main(String[] args) {
practice1();
}
}
a b c e f2.2.2 自定义排序 2.2.2.1 自己构造比较器
package javaweb.collection; import java.util.Comparator; import java.util.Iterator; import java.util.TreeSet; class MyCmp implements Comparator
按年龄降序,相同年龄,按学号升序
1001 luo 25 1002 wang 25 1003 zhang 25 1004 pi 20 1001 chen 18
附件:Studen类
package javaweb.collection;
import java.util.HashSet;
import java.util.Iterator;
public class Student {
String id, name;
int age;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Student(String id, String name, int age) {
this.id = id;
this.name = name;
this.age = age;
}
@Override
public String toString() {
return id + " " + name + " " + age;
}
@Override
public boolean equals(Object obj) {
return id.equals(((Student) obj).id);
}
@Override
public int hashCode() {
return Integer.valueOf(id);
}
public static void main(String[] args) {
HashSet hashset = new HashSet();
Student student1 = new Student("1001", "chen", 18);
Student student2 = new Student("1001", "chen", 18);
hashset.add(student1);
hashset.add(student2);
Iterator it = hashset.iterator();
while (it.hasNext()) {
System.out.println(it.next() + " ");
}
}
}
2.2.2.2 在 Student类里面就重写 compareTo()
package javaweb.collection; import java.util.Iterator; import java.util.TreeSet; public class Student1 implements Comparable
1001 luo 25 1002 wang 25 1003 zhang 25 1004 pi 20 1001 chen 18



