我需要一些帮助来调试以下 java 程序。
import java.util.Random;
public class NextInt
{
public static void main(String[] args)
{
for(int i=0; i<20; ++i)
{
if(i>0)
System.out.print(", ");
int x = (new Random()).nextInt();
System.out.print( x % 2 + 1);
}
System.out.println("");
}
}
将输出(例如):
0, 1, 0, 1, 2, 2, 2, 0, 0, 1, 1, 1, 2, 0, 1, 1, 1, 1, 2, 1
我认为输出应该只包含一个和两个!如果我们考虑x % (2+1)
解释,那么输出是正确的。模运算符真的比加法弱吗?Java 教程说不。还是我还缺少其他东西?