小弟最近写了一个排序的问题,但是不知道为什么就是不能运行,希望各位大虾帮助一下,谢谢!import java.util.Arrays;
public class Tongji
{
public static void main(String[] args) throws Exception
{
int[][] a = new int[3][3];
a[0][0] = 1;
a[0][1] = 2;
a[0][2] = 3;
a[1][0] = 1;
a[1][1] = 2;
a[1][2] = 1;
a[2][0] = 3;
a[2][1] = 2;
a[2][2] = 1;
Arrays.sort(a);
for(int i=0;i<3;i++)
for(int j=0;j<3;j++)
{
System.out.println(a[i][j]);
}
}报错:Exception in thread "main" java.lang.ClassCastException: cannot be cast to java.lang.Comparable
at java.util.Arrays.mergeSort<Unknown Source>
at java.util.Arrays.sort<Unknown Source>
at Tongji.main<Tongji.java:22>
public class Tongji
{
public static void main(String[] args) throws Exception
{
int[][] a = new int[3][3];
a[0][0] = 1;
a[0][1] = 2;
a[0][2] = 3;
a[1][0] = 1;
a[1][1] = 2;
a[1][2] = 1;
a[2][0] = 3;
a[2][1] = 2;
a[2][2] = 1;
Arrays.sort(a);
for(int i=0;i<3;i++)
for(int j=0;j<3;j++)
{
System.out.println(a[i][j]);
}
}报错:Exception in thread "main" java.lang.ClassCastException: cannot be cast to java.lang.Comparable
at java.util.Arrays.mergeSort<Unknown Source>
at java.util.Arrays.sort<Unknown Source>
at Tongji.main<Tongji.java:22>
他只能排序一维数组,你传进去的是2维!!
你应该一维一维取出来排序!
int[][] a = new int[3][3];
a[0][0] = 1;
a[0][1] = 2;
a[0][2] = 3;
a[1][0] = 1;
a[1][1] = 2;
a[1][2] = 1;
a[2][0] = 3;
a[2][1] = 2;
a[2][2] = 1;
for (int i = 0; i < a.length; i++) {
Arrays.sort(a[i]);
} for (int i = 0; i < 3; i++)
for (int j = 0; j < 3; j++) {
System.out.println(a[i][j]);
}
}
}