java里面的Collections.sort用法下面两个定义是怎么结合起来成功排序的啊 不懂请详解1》Collections.sort(list, new PriceComparator())2》public int compare(Object object1, Object object2) {// 实现接口中的方法 Book p1

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/01 20:47:48
java里面的Collections.sort用法下面两个定义是怎么结合起来成功排序的啊 不懂请详解1》Collections.sort(list, new PriceComparator())2》public int compare(Object object1, Object object2) {// 实现接口中的方法   Book p1

java里面的Collections.sort用法下面两个定义是怎么结合起来成功排序的啊 不懂请详解1》Collections.sort(list, new PriceComparator())2》public int compare(Object object1, Object object2) {// 实现接口中的方法 Book p1
java里面的Collections.sort用法
下面两个定义是怎么结合起来成功排序的啊 不懂请详解
1》Collections.sort(list, new PriceComparator())
2》public int compare(Object object1, Object object2) {// 实现接口中的方法
Book p1 = (Book) object1; // 强制转换
Book p2 = (Book) object2;
return new Double(p2.price).compareTo( new Double(p1.price));
}
static class PriceComparator implements Comparator {
public int compare(Object object1, Object object2) {// 实现接口中的方法
Book p1 = (Book) object1; // 强制转换
Book p2 = (Book) object2;
return new Double(p1.price).compareTo( new Double(p2.price));
}
}
就是这样哦!
我的疑惑就是实现了PriceComparator,但是compareto最后不是返回一个(-1,0,1)的值么?用list就会成功排序么?

java里面的Collections.sort用法下面两个定义是怎么结合起来成功排序的啊 不懂请详解1》Collections.sort(list, new PriceComparator())2》public int compare(Object object1, Object object2) {// 实现接口中的方法 Book p1
PriceComparator()这个类的具体代码是什么啊?这样子完全看不懂的