具體請看 <Thinking in java>
Comparable 是一個對象本身就已經支持自比較所需要實現的接口(如 String
而 Comparator 是一個專用的比較器
可以說一個是自已完成比較
用 Comparator 是策略模式(strategy design pattern)
比如
java 代碼
// AbsComparator
import java
public class AbsComparator implements Comparator {
public int compare(Object o
int v
int v
return v
}
}
可以用下面這個類測試 AbsComparator
// Test
import java
public class Test {
public static void main(String[] args) {
//產生一個
Random rnd = new Random();
Integer[] integers = new Integer[
for(int i =
integers[i] = new Integer(rnd
system
Arrays
system
system
Arrays
system
}
}
From:http://tw.wingwit.com/Article/program/Java/hx/201311/25976.html