A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 蓝色风信子 中级黑马   /  2016-6-3 22:19  /  247 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. package 练习;
  2. import java.util.*;
  3. class Person
  4. {
  5.         private String name;
  6.         private int age;
  7.         Person(String name,int age)
  8.         {
  9.                 this.name=name;
  10.                 this.age=age;
  11.         }
  12.         public String getName()
  13.         {
  14.                 return name;
  15.         }
  16.         public int getAge()
  17.         {
  18.                 return age;
  19.         }
  20. }
  21. class TreeSetTest
  22. {
  23.         public static void main(String[] args)
  24.         {
  25.                 TreeSet ts=new TreeSet(new MyComparator());
  26.                 ts.add(new Person("lisi01",20));
  27.                 ts.add(new Person("lisi02",22));
  28.                 ts.add(new Person("lisi03",18));
  29.                 ts.add(new Person("lisi04",15));
  30.                 Iterator it=ts.iterator();
  31.                 while(it.hasNext())
  32.                 {
  33.                         Object obj=it.next();
  34.                         Person p=(Person)obj;
  35.                         System.out.println(p.getName()+"---"+p.getAge());
  36.                 }
  37.         }
  38. }
  39. class MyComparator implements Comparator{//定义一个比较器
  40.         public int compare(Object o1,Object o2)
  41.         {
  42.                 //if(!((o1 instanceof Person)&&(o2 instanceof Person)))
  43.                        
  44.                 Person p1=(Person)o1;
  45.                 Person p2=(Person)o2;
  46.                 int num=new Integer(p1.getAge()).compareTo(new Integer(p2.getAge()));
  47.                 if(num==0)
  48.                 return p1.getName().compareTo(p2.getName());
  49.                 return num;
  50.         }
  51. }
复制代码

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马