为什么他们在这里将RandomInt Integer加1?

时间:2013-07-10 00:31:15

标签: java

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

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

让我感到困惑的是+1部分,是否有任何理由,或仅仅为了更多“随机性”?非常感谢!

3 个答案:

答案 0 :(得分:4)

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

+ 1改变范围。

答案 1 :(得分:3)

我认为+1是从

转移随机整数的域
  

[0,elements.length-1]

  

[1,elements.length]

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

答案 2 :(得分:2)

  

是否有任何理由,或仅仅为了更多“随机性”?

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