【Java开源代码栏目提醒】:网学会员为广大网友收集整理了,TreeSetDemo.java,希望对大家有所帮助!
package Chapter15;
//文件:
程序15.5 TreeSetDemo.java 描述:测试TreeSet方法
//导入需要使用的包
import java.util.*;
public class TreeSetDemo {
public static void main(String[] args) {
SortedSet<Student> s = new TreeSet<Student>(); // 创建一个排序的集合
Student s1 = new Student("Lucy", "S001"); // 创建,并初始化Student对象s1
Student s2 = new Student("Jack", "S004"); // 创建,并初始化Student对象s2
Student s3 = new Student("Amiy", "S010"); // 创建,并初始化Student对象s3
Student s4 = new Student("Tian", "S123"); // 创建,并初始化Student对象s4
Student s5 = new Student("Liuo", "S005"); // 创建,并初始化Student对象s5
Student s6 = new Student("Sbre", "S002"); // 创建,并初始化Student对象s6
s.add(s1); // 将元素s1添加到集合s
s.add(s2); // 将元素s2添加到集合s
s.add(s3); // 将元素s3添加到集合s
s.add(s4); // 将元素s4添加到集合s
s.add(s5); // 将元素s5添加到集合s
s.add(s6); // 将元素s6添加到集合s
System.out.print(s); // 输出集合元素
}
public static void print(Collection c) {
Iterator it = c.iterator(); // 返回集合迭代器
while (it.hasNext()) { // 遍历迭代器
Object o = it.next();
System.out.println(o); // 输出元素
}
}
}
class Student implements Comparable {
String name; // 声明字符串类型域name
String id; // 声明字符串类型域id
// 声明Student对象构造方法
public Student(String name, String id) {
this.name = name; // 初始化成员对象name
this.id = id; // 初始化成员变量id
}
// 将对象信息转化为字符串信息
public String toString() {
return name + "|" + id; // 返回信息
}
// 实现compareTo接口,比较id的大小
public int compareTo(Object o) {
Student ts = (Student) o; // 创建Student局部变量
return id.compareTo(ts.id); // 返回compareTo运算结果
}
}