【问题标题】:Reading in integer array sizes and fill with random numbers, using java.util.Random [closed]使用 java.util.Random 读取整数数组大小并填充随机数 [关闭]
【发布时间】:2013-02-06 14:22:30
【问题描述】:

我希望读取一个整数“数组大小为 1”,然后使用 1 到 10 之间的随机数填充该数组。

以下是我目前的代码。我必须读入整数才能给数组一个大小,这一事实完全让我感到困惑。如何完成用随机数填充数组?

我是数组新手,这也是我第一次使用java.util.Random。非常感谢有人展示我是如何完成的,这样我就可以自己阅读并做几次。谢谢。

public void createUI() {    
    createInput("Array size one");
    setButtonLabel("Submit");
}

public void processInput(){
    int sizeone = nextInt("Array size one");
    int [] arrayone= new int[sizeone];
    int randomNum;
    Random generator = new Random();
    randomNum = generator.nextInt(11);

    for (int i = 0; i < arrayone.length; i++) {
      arrayone[] = randomNum;
    }
}   

【问题讨论】:

  • arrayone[i] = randomNum
  • 为什么标题中包含“Android”?这个问题与 Android 无关。
  • 是的,我想就是这样。我的 AVD 一定有问题。当我尝试打印数组时它什么也不返回。干杯。
  • 对不起,我使用 AVD 来运行程序,我忘记提及了。似乎是它的问题。我必须重新安装它。

标签: java arrays random


【解决方案1】:

您正在用相同的数字填充数组。你必须把 randomNum = generator.nextInt(11);arrayone[] = randomNum; 之前进入 for 循环 在这里你又犯了一个错误,它是arrayone[i] = randomNum; 而不是arrayone[] = randomNum;,因为你必须定义数组的索引。

【讨论】:

  • 请注意,为了获得 1 到 10 范围内的数字(如 OP 所愿),它应该是:randomNumber = 1 + generator.nextInt(10);
  • 感谢一百万!我明白了,它会自动从 0 开始,所以我必须加 1。再次感谢
  • @Deriohig 欢迎您!
猜你喜欢
  • 2014-03-15
  • 2013-09-16
  • 1970-01-01
  • 1970-01-01
  • 2014-05-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多