您的位置:首页 > 其它

TreSet的有序唯一性

2016-03-03 08:28 363 查看
<pre name="code" class="java">二叉树分为先序遍历,中序遍历,后序遍历 在此不详细列出



import java.util.Comparator;
import java.util.TreeSet;

/*
* 存储学生对象,要求保证唯一和排序(按照学生的姓名长度从长到短)。
*/
public class TreeSetTest {
public static void main(String[] args) {
//创建集合对象
TreeSet<Student> treeSet = new TreeSet<Student>(new Comparator<Student>() {
@Override
public int compare(Student s1, Student s2) {
// 主要操作
int num = s2.getName().length() - s1.getName().length();
// 次要条件
int num2 = num == 0 ? s1.getName().compareTo(s2.getName())
: num;
int num3 = num2 == 0 ? s1.getAge() - s2.getAge() : num2;
return num3;
}

});
//存储学生对象,要求保证唯一和排序(按照学生的姓名长度从长到短)。

// 创建学生对象
Student s1 = new Student("baigujing", 20);
Student s2 = new Student("zixixianzi", 22);
Student s3 = new Student("guanyinjiejie", 18);
Student s4 = new Student("tangseng", 20);
Student s5 = new Student("bailongma", 20);
Student s6 = new Student("niumowang", 24);
Student s7 = new Student("taibaijinxing", 55);
Student s8 = new Student("change", 18);
Student s9 = new Student("change", 18);
Student s10 = new Student("zixixianzi", 22);
// 添加元素
treeSet.add(s1);
treeSet.add(s2);
treeSet.add(s3);
treeSet.add(s4);
treeSet.add(s5);
treeSet.add(s6);
treeSet.add(s7);
treeSet.add(s8);
treeSet.add(s9);
treeSet.add(s10);

// 遍历
for (Student s : treeSet) {
System.out.println(s.getName() + "---" + s.getAge());
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: