我被困了大约一个小时,谷歌搜索和研究后,我无法运行我的代码。它显示没有一个错误,当我按下运行它只是打开调试,什么都不做。我正在使用eclipse。我正在尝试创建一个包含10个对象的列表并给它们随机数字。
class test {
public static void main(String[] args){
int a [] = new int[9];{
for (int i = 0; i < a.length; i++)
a[i] = a[(int)(Math.random()*70+15)];
for (int elem : a){
System.out.println(elem);
};
}}}
答案 0 :(得分:6)
如果您实际上正在启动该应用程序,它将失败,并在以下行中出现异常:
a[i] = a[(int)(Math.random()*70+15)];
此处,a[]
由九个元素组成,因此其最高索引为8.但是,Math.random()*70+15
可以保证生成大于8的数字。
答案 1 :(得分:2)
我不知道任何Java,但我会说:
for (int i = 0; i < a.length; i++)
a[2] = a[(int)(Math.random()*70+15)];
应该是
for (int i = 0; i < a.length; i++)
a[i] = (int)(Math.random()*70+15);
答案 2 :(得分:1)
我建议使用随机数生成器。我还建议使用比i
或a更好的名称。
import java.util.Random;
class test {
public static void main(String[] args){
Random object = new Random ();//declare for your object
int a; //declare your integer type (I would suggest
// changing that to be more descriptive)
for (int i = 1; i <=10; i++)
{
a = object.nextInt(100); // change 100 to however large
// parameter you want
System.out.println(a + " ");
}
}
}