【发布时间】:2016-05-14 17:17:30
【问题描述】:
我试图让它在不同的行上打印出 2 和 2。我已经记下了单独的行部分,但由于某种原因,这个东西输出的数字是 2 然后是 3。这是为我的一个章节分配的任务,由于我的工作日程安排,让一个小组一起寻求帮助是具有挑战性的。谁能帮我理解这里发生了什么?注意:seedVal 从 4 开始。
使用 nextInt() 键入两个语句以打印两个随机整数 介于 0 和 9 之间。以换行符结尾。例如:
5
7
注意:对于这个活动,使用一个语句可能会产生不同的 输出(由于编译器以不同的顺序调用 nextInt())。 对此活动使用两个语句。
import java.util.Scanner;
import java.util.Random;
public class DiceRoll {
public static void main (String [] args) {
Random randGen = new Random();
int seedVal = 0;
randGen.setSeed(seedVal);
System.out.println(randGen.nextInt(seedVal));
System.out.println(randGen.nextInt(seedVal));
return;
}
}
【问题讨论】:
-
为什么会在不同的行上打印出 2 和 2?
-
这会在第一次调用
nextInt时抛出IllegalArgumentException: bound must be positive。 -
当它期望上限值时,您正试图给它一个种子。来自同一个链接:“抛出:IllegalArgumentException - 如果 n 不是正数”
-
不,seedVal 不是从 4 开始:
int seedVal = 0;
标签: java random numbers generator