黑马程序员技术交流社区
标题:
集合的问题为啥报错呢
[打印本页]
作者:
LJZkevin
时间:
2014-7-19 18:35
标题:
集合的问题为啥报错呢
TreeMap<String,Student > map = new TreeMap< String,Student>(
new Comparator<Student>() {
public int compare(Student s1, Student s2) {
int num = s1.getAge() - s2.getAge();
int num2 = num == 0 ? (s1.getName().compareTo(s2
.getName())) : num;
return num2;
}
});
复制代码
作者:
吴杰栋
时间:
2014-7-19 19:23
楼主,你代码那边的三目运算符那样写有问题的,还有定义比较器的时候,最好是重新再定义一个类去实现comparator接口,这样的代码会比较好维护.
package cn.test;
import java.util.Comparator;
public class ComparatorByAge implements Comparator {
public int compare(Object o1, Object o2) {
Student s1 = (Student)o1;
Student s2 = (Student)o2;
int temp = s1.getAge() - s2.getAge();
return temp == 0?s1.getName().compareTo(s2.getName()):temp;
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2