在Java中生成随机int

时间:2014-11-30 20:46:45

标签: java random numbers range

我有这个代码,如果它是在我选择的范围内生成随机数。我遇到的问题是,如果他们看到for的行,我认为必须生成10000个随机数,但这只会让我6668.如果我把一个少于这个数量,代码工作正常。这是怎么回事? Eclipse有某种字符限制? 非常感谢你!

问候!

import java.util.Random;
  public static final void main(String... aArgs){
log("Generating random integers in the range 1..10.");
    int START = 2000000 ;
int END =   8999999 ;
Random random = new Random();
for (int idx = 1; idx <= 10000; ++idx){
  showRandomInteger(START, END, random);
}

log("Done.");


}
private static void showRandomInteger(int aStart, int aEnd, Random aRandom){
if (aStart > aEnd) {
  throw new IllegalArgumentException("Start cannot exceed End.");
    }
//get the range, casting to long to avoid overflow problems
long range = (long)aEnd - (long)aStart + 1;
// compute a fraction of the range, 0 <= frac < range
long fraction = (long)(range * aRandom.nextDouble());
int randomNumber =  (int)(fraction + aStart);    
log("351" + randomNumber);


}
 private static void log(String aMessage){
System.out.println(aMessage);
  }
}

1 个答案:

答案 0 :(得分:1)

是的,eclipse在控制台上有一个字符限制,但你可以扩展它或完全取消限制。

在Eclipse的偏好设置中,转到Run/Debug,然后转到Console。您会看到一个复选框&#34;限制控制台输出&#34;。您可以取消选中它,也可以更改Console buffer size

我指的是Eclipse Luna。