指定排序规则的TreeSet集合
2016-07-14 09:48
387 查看
指定排序规则的TreeSet集合
import java.util.Set ;
import java.util.TreeSet ;
class Person implements Comparable<Person>{
private String name ;
private int age ;
public Person(String name,int age){
this.name = name ;
this.age = age ;
}
public String toString(){
return "姓名:" + this.name + ";年龄:" + this.age ;
}
public int compareTo(Person per){
if(this.age>per.age){
return 1 ;
}else if(this.age<per.age){
return -1 ;
}else{
return this.name.compareTo(per.name) ;// 调用String中的compareTo()方法
}
}
};
public class TreeSetDemo04{
public static void main(String args[]){
Set<Person> allSet = new TreeSet<Person>() ;
allSet.add(new Person("张三",30)) ;
allSet.add(new Person("李四",31)) ;
allSet.add(new Person("王五",32)) ;
allSet.add(new Person("王五",32)) ;
allSet.add(new Person("王五",32)) ;
allSet.add(new Person("赵六",33)) ;
allSet.add(new Person("孙七",33)) ;
System.out.println(allSet) ;
}
};
运行结果:
[姓名:张三;年龄:30, 姓名:李四;年龄:31, 姓名:王五;年龄:32, 姓名:孙七;年龄:33, 姓名:赵六;年龄:33]
import java.util.Set ;
import java.util.TreeSet ;
class Person implements Comparable<Person>{
private String name ;
private int age ;
public Person(String name,int age){
this.name = name ;
this.age = age ;
}
public String toString(){
return "姓名:" + this.name + ";年龄:" + this.age ;
}
public int compareTo(Person per){
if(this.age>per.age){
return 1 ;
}else if(this.age<per.age){
return -1 ;
}else{
return this.name.compareTo(per.name) ;// 调用String中的compareTo()方法
}
}
};
public class TreeSetDemo04{
public static void main(String args[]){
Set<Person> allSet = new TreeSet<Person>() ;
allSet.add(new Person("张三",30)) ;
allSet.add(new Person("李四",31)) ;
allSet.add(new Person("王五",32)) ;
allSet.add(new Person("王五",32)) ;
allSet.add(new Person("王五",32)) ;
allSet.add(new Person("赵六",33)) ;
allSet.add(new Person("孙七",33)) ;
System.out.println(allSet) ;
}
};
运行结果:
[姓名:张三;年龄:30, 姓名:李四;年龄:31, 姓名:王五;年龄:32, 姓名:孙七;年龄:33, 姓名:赵六;年龄:33]
相关文章推荐
- 【Java基础】集合
- 关于TreeSet<E>泛型类中的compareTo()方法的调用
- 黑马程序员------------------java基础--------------------集合
- JAVA基础之集合数组详解
- “黑马程序员” TreeSet
- 黑马程序员-----Java基础-----Collection-Set
- HashSet下的字符串排序,关键字,HashSet转TreeSet()
- Java Set集合之Treeset
- TreeSet()详解
- Set接口及其实现类
- 黑马程序员---2015.6.21.java基础笔记---TreeSet---HashSet---HashMap
- HashSet,TreeSet和LinkedHashSet的区别
- hashset,linkhashset,treeset区别
- 028.Comparator 比较器的使用
- Set--TreeSet实现分析
- 集合框架(五)使用Comparable接口和Comparator接口来比较元素
- [TreeMap和TreeSet]——简单应用
- 黑马程序员-------Set集合
- 【java】TreeSet的自然排序
- 【java】TreeSet的定制排序