一、Arrays.sort()的用法
import java.util.Arrays;
public class Main{
public static void main(String args[]) {
int a[] = {9,8,7,6,5,4,3,2,1,0};
Arrays.sort(a);
for(int i=0; i<a.length; ++i)
System.out.print(a[i]+" ");
System.out.println("");
}
}
二、Collections.sort()的用法
(1)、
import java.util.*;
class Node{
int num;
String name;
//自定义排序
static class NodeComparator implements Comparator{
//注:实现Comparator接口
public int compare(Object a, Object b) {
// 升序
Node aa = (Node)a, bb = (Node)b;
return aa.num==bb.num?0:(aa.num<bb.num?-1:1);
}
}
Node(int num, String name){
this.num = num;
this.name = name;
}
public String toString() {
return "name = "+name+", num = "+num;
}
}
public class Main{
/***
* @author SUNSETS
* @param args
*/
public static void main(String args[]) {
List a = new ArrayList();
for(int i=5; i>=1; --i) a.add(new Node(i, "Node"+i));
// 排序
Collections.sort(a, new Node.NodeComparator());
Iterator it = a.iterator();
while(it.hasNext()) {
System.out.println(it.next().toString());
}
}
}
(2)、
import java.util.*;
class Node implements Comparable{
int num;
String name;
public int compareTo(Object o){
Node n = (Node)o;
return num==n.num?0:(num<n.num?-1:1);
}
Node(int num, String name){
this.num = num;
this.name = name;
}
public String toString() {
return "name = "+name+", num = "+num;
}
}
public class Main{
public static void main(String args[]) {
List a = new ArrayList();
for(int i=5; i>=1; --i)
a.add(new Node(i, "Node"+i));
Collections.sort(a);
Iterator it = a.iterator();
while(it.hasNext()) {
System.out.println(it.next().toString());
}
}
}