【问题标题】:Generating a random int in Java在 Java 中生成一个随机整数
【发布时间】:2015-01-28 20:22:14
【问题描述】:

我有这段代码,如果它确实在我选择的范围内生成随机数。我遇到的问题是,如果他们看到 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);
  }
}

【问题讨论】:

标签: java random numbers range


【解决方案1】:

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

在 Eclipse 的首选项中,转到 Run/Debug,然后转到 Console。您会看到一个复选框“限制控制台输出”。您可以取消选中它,也可以更改Console buffer size

我指的是 Eclipse Luna。

【讨论】:

    猜你喜欢
    • 2011-03-19
    • 1970-01-01
    • 2018-04-03
    • 2013-04-15
    • 2017-01-08
    • 2019-05-02
    • 1970-01-01
    • 1970-01-01
    • 2023-01-03
    相关资源
    最近更新 更多