从已排序的数组中删除0值?

Han*_*nna 4 java arrays sorting default zero

我想知道是否有办法删除我运行以下代码时得到的默认"0"值:

Scanner scan = new Scanner(System.in);

int [] x = new int[4];
for ( int i = 1; i < x.length; i++ )
{
    System.out.println( "Enter number " + i + ": ");
    x[i] = scan.nextInt();
}
Arrays.sort(x);
System.out.println(Arrays.toString(x));
}
Run Code Online (Sandbox Code Playgroud)

输出如下

[0, i[1], i[2], i[3]]
Run Code Online (Sandbox Code Playgroud)

当然,这里的所有数组值实际上都是输入控制台的数字.代码是工作.它成功地将任何数字排序为正确的顺序,然而,总是有这个令人讨厌的0.

我不打算删除所有0(我希望用户能够输入0并让它显示) - 我只是不想要默认的0.任何想法?

dka*_*arp 5

Java中的数组索引是从0开始的,而不是从1开始的.所以从0开始迭代而不是从1开始迭代你应该是好的:

for ( int i = 0; i < x.length; i++ )
Run Code Online (Sandbox Code Playgroud)

  • 哇哇 多么愚蠢的错误.我应该被打耳光.非常感谢! (2认同)