62,614
社区成员
发帖
与我相关
我的任务
分享
package csdn.programbbs_606;
import java.util.Arrays;
import java.util.Comparator;
public class SortTest {
public static void main(String[] args) {
Integer a[] = {6, 3, 5, 9, 1};
Arrays.sort(a, null);
for(Integer i : a)
System.out.print(i + " ");
}
}
class sComparato implements Comparator<Integer>{
@Override
public int compare(Integer o1, Integer o2) {
return o1 - o2;
}
}
package csdn.programbbs_606;
import java.util.*;
public class VLA implements Comparable<VLA> {
int dishSize;
public static void main(String[] args) {
VLA[] va = { new VLA(40), new VLA(200), new VLA(60) };
Arrays.sort(va);
for (VLA v : va)
System.out.print(v.dishSize + " ");
}
VLA(int d) { dishSize = d; }
@Override
public int compareTo(VLA o) {
return this.dishSize - o.dishSize;
}
}
Comparator 是在集合外部实现的排序,具体实现:package csdn.programbbs_606;
import java.util.*;
public class VLA {
int dishSize;
public static void main(String[] args) {
VLA[] va = { new VLA(40), new VLA(200), new VLA(60) };
Arrays.sort(va, new AbsComparato());
for (VLA v : va)
System.out.print(v.dishSize + " ");
int index = Arrays.binarySearch(va, new VLA(200), new AbsComparato());
System.out.println(index);
}
VLA(int d) { dishSize = d; }
}
class AbsComparato implements Comparator<VLA>{
@Override
public int compare(VLA o1, VLA o2) {
return o1.dishSize - o2.dishSize;
}
}