问题为Java实现二维数组排序
import java.util.Arrays;
public class java {
public static void main(String[] args){
int[][] m=new int[][]{{4,5},{1,7},{4,2},{1,2},{1,1},{4,1}};
sort(m);
for (int i=0;i<m.length;i++)
System.out.print(Arrays.toString(m[i]));
}
public static void sort(int[][] array){
for (int i = 0; i < array.length-1; i++) {
for (int j = 0; j < array.length-1-i; j++) {
if (large(array[j],array[j + 1])) {
int[] temp = array[j];
array[j] = array[j + 1];
array[j + 1] = temp;
}
}
}
}
public static boolean large(int[] a,int[] b) {
if (a.length > b.length)
return true;
else if (b.length > a.length)
return false;
else {
for (int i=0;i<a.length;i++){
if (a[i]>b[i]) {
return true;
}
}
}
return false;
}
}
运行结果应该是将这个二维数组由小到大排序
但结果为这个:
[1, 1][4, 1][1, 2][4, 2][1, 7][4, 5]
进程已结束,退出代码0
我也不知道哪里出了毛病请求帮我修改一下代码,预期结果应该是[1, 1][1,7][1, 2][4, 1][4,2][4, 5]