突然看到了pta上的题,简单的复习了一下comparator的简单使用
题意答题是这样的:
创建一个Person类,成员为:int age,String name;里面重写起toString()的方法,格式为name-age;
再编写两个Comparator类:
编写
NameComparator
类,实现对name进行升序排序编写
AgeComparator
类,对age进行升序排序然后下面是测试
输入n
输入n行name age,并创建n个对象放入数组
对数组按照name进行升序排序后输出。
对数组按照age进行升序排序后输出。
大体的意思就是这样,也就是要在不改变主类的情况下,通过Comparator接口来实现定制排序
首先先写这两个Comparator的类,只需要重写其比较方法即可,可以写在测试主类的下方
------注意这两个类一定要在主类外面,当初自己放在里面费了一阵功夫才看出来
class NameComparator implements Comparator<Person>{
public int compare(Person p1,Person p2) {
return p1.getName().compareTo(p2.getName());
}
}
class AgeComparator implements Comparator<Person>{
publi