1

我正在研究 Horstmann 的 Java 书籍中的代码:

Integer key = new Random().nextInt(elements.length) + 1;

令我困惑的是 +1 部分,这有什么原因,还是只是为了更多“随机性”?非常感谢!

4

3 回答 3

4

nextInt()返回一个大于或等于零且小于其参数的数字。

+ 1移动该范围。

于 2013-07-10T00:32:10.507 回答
3

我认为这+1是将随机整数的域从

[0,elements.length-1]

[1、元素.长度]

Horstmann 只是想要一个从 1 到 elements.length 的随机整数作为他的密钥。

于 2013-07-10T00:32:36.447 回答
2

有什么理由,或者只是为了更多的“随机性”?

不,这不会添加“随机性”,1显然不是随机的,这是将范围从 转移[0,elements.length-1][1,elements.length]

于 2013-07-10T00:33:54.053 回答