-2
private void printRandoms() {
    int value;
    for (int i = 2; i < 8; i = i + 2) {
        value = (int) (Math.random() * 2 + 3);
        System.out.print(value + " ");
    }
    System.out.println();
}

有人可以向我解释为什么有 2 个可能的输出以及为什么它们是 3,3,4 和 4,3,4。还有这个 i = i + 2 在这里是什么意思?

4

1 回答 1

3

Math.random()产生一个介于 0 和 1 之间的随机浮点数(不包括 1)。你将它乘以 2,所以现在值介于 0 和 2 之间(不包括 2)。然后你加 3,所以值在 3 和 5 之间(不包括 5)。演员表(int)丢失了十进制信息,所以剩下的可能性是 3 和 4。

i = i + 2设置i为表达式的均值i + 2,即它加 2 到i.

于 2013-04-13T00:42:25.427 回答