0

我试图用随机数填充一个数组,以便在二进制搜索中进行排序和使用。除了生成部分之外,我所有的代码似乎都可以正常工作。数字需要在 1-32767 之间,我继续得到 0。

for(int i = 0; i < SIZE-1; i++){
   array[i] = (gen.nextInt(32767 - 1) + 1);
}

// Print out five entries
for(int i = 0; i < 5; i++){
   System.out.println(array[i]);
}

// Sort array
Arrays.sort(array);

// Print out first five sorted entries
for(int i = 0; i < 5; i++){
   System.out.println(array[i]);
}

在它们被排序和打印之后,第一个条目总是 0。也许这与数组排序有关,我没有意识到这一点。有什么建议么?

4

1 回答 1

5

你永远不会设置数组的最后一个元素——使用i < SIZE,而不是i < SIZE-1

于 2012-10-05T00:16:22.550 回答