一、下面代码实现:若x相等对y从小到大排。否则,对x从小到大排序
import java.lang.reflect.Array;
import java.util.*;
import java.math.BigInteger;
//定义node类
class node{
int x,y;
}
//利用Comparator接口复写compare方法
class MyComparator implements Comparator{
public int compare(node a,node b) {
if(a.x==b.x)
return a.y
运行结果
未排序前:
0 4
1 3
0 2
1 1
排序后:
0 2
0 4
1 1
1 3
二、下面给出Java中对sort进行降序排序的两种方法
利用Collections的reverseOrder方法:
import java.lang.reflect.Array;
import java.util.*;
import java.math.BigInteger;
class node{
int x,y;
}
public class main {
public static void main(String args[]) {
Integer a[]= {3,2,5,1,6,9};
Arrays.sort(a,Collections.reverseOrder());
for(int i=0;i
利用Comparator接口复写compare方法:
import java.lang.reflect.Array;
import java.util.*;
import java.math.BigInteger;
class MyComparator implements Comparator {
public int compare(Integer a,Integer b) {
return a>b?-1:1;
}
}
public class main {
public static void main(String args[]) {
Integer a[]= {3,2,5,1,6,9};
Comparator cmp=new MyComparator();
Arrays.sort(a,Collections.reverseOrder());
for(int i=0;i