一、下面代码实现:若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<node>{
public int compare(node a,node b) {
if(a.x==b.x)
return a.y<b.y?-1:1;
else
return a.x<b.x?-1:1;
}
}
public class main {
public static void main(String args[]) {
//注意对申请的结构体数组 每个都要实例化一下
node a[]=new node[4];
for(int i=0;i<4;i++) {
a[i]=new node();
}
//赋值
for(int i=0;i<4;i++) {
a[i].x=i%2;
}
for(int i=0;i<4;i++) {
a[i].y=4-i;
}
System.out.println("未排序前:");
for(int i=0;i<4;i++) {
System.out.println(a[i].x+" "+a[i].y);
}
//定义一个自定义类MyComparator的对象
//实现排序
Comparator cmp=new MyComparator();
Arrays.sort(a,cmp);
System.out.prin