【发布时间】:2017-08-11 18:44:44
【问题描述】:
class Temp
{
static void sort1(int x[][]) //sort 2d array
{
int temp = 0;
for(int i=0;i<x.length;i++)
{
for(int j=i;j<x[i].length;j++)
{
for(int k=i;k<x.length;k++)
{
for(int l=j;l<x[k].length;l++)
{
if(x[i][j] > x[k][l])
{
temp = x[i][j];
x[i][j] = x[k][l];
x[k][l] = temp;
}
}
}
}
}
System.out.println(".....Sorted Array.....");
for(int i=0;i<x.length;i++)
{
for(int j=i;j<x[i].length;j++)
{
System.out.print(x[i][j] + " ");
}
}
}
public static void main(String... s)
{
sort1(new int[][] {
{12, 7, 65},
{87, 1, 4, 5, 31},
{9, 76}
});
}
}
当我运行这个程序时,它给出的输出为
1 4 5 7 12 31 65。
我希望是这样的
1 4 5 7 9 12 31 65 76 87.
我的代码有什么问题? 它缺少应该显示的结果。任何帮助或见解将不胜感激。
【问题讨论】:
-
调试代码时发生了什么?
-
在哪个特定的行号,在调试时,您是否观察到结果与您预期的结果不同?
-
不要以为我们互相理解。从这里开始:vogella.com/tutorials/EclipseDebugging/article.html 如果你不使用 Eclipse,请在 Google 中搜索
[IDE NAME] debugging -
您有两个选择:获取带有内置调试器的 IDE(它们大部分都是免费的),或者使用笔和纸。更难,但绝对仍然可行。
标签: java arrays sorting multidimensional-array