Java打印数组的内容
我有一个构造函数,它接受数组长度作为参数,并使用另一种方法用随机数填充数组Java打印数组的内容,java,arrays,printing,Java,Arrays,Printing,我有一个构造函数,它接受数组长度作为参数,并使用另一种方法用随机数填充数组 public class RandomArray { public RandomArray(int length) { array = new int[length]; for (int index = 0; index <= array.length; index++) { array[index] = randomFill(); } } public
public class RandomArray {
public RandomArray(int length) {
array = new int[length];
for (int index = 0; index <= array.length; index++) {
array[index] = randomFill();
}
}
public int randomFill()
{
Random rand = new Random();
int num = rand.nextInt(length);
return num;
}
}
您的基本问题是从不将数组存储在RandomArray类中。尝试这样做:
public class RandomArray {
int myArray [];
public RandomArray(int length) {
myArray = new int[length];
for (int index = 0; index <= array.length; index++) {
myArray[index] = randomFill();
}
}
public int randomFill()
{
Random rand = new Random();
int num = rand.nextInt(length);
return num;
}
public int [] getArray(){
return this.myArray;
}
}
公共类随机数组{
int myArray[];
公共随机数组(整数长度){
myArray=新整数[长度];
for(int index=0;index首先,正如Sun所指出的,您将需要声明一个数组。但是,在此之后,您可以使用for循环,您必须打印每个元素
但是,您需要稍微更改循环的条件
for(int index = array.length - 1; **index >= 0**; index++)
是不正确的,因为循环将继续迭代,因为您不断添加到索引中,并且没有设置停止的上限。我建议您将该行更改为
for(int index = 0; index <= array.length; index++)
用于(int index=0;index使用以下代码段。有几个选项可以打印内容。既然您说过需要在构造函数中打印数组内容,我已经在与数字赋值相同的while循环中插入了一个print语句。如果您愿意,可以有两个单独的循环。每个循环一个用于数字赋值M耳鼻喉科和数字印刷
public class RandomArray {
int newArr[];
public RandomArray(int size) {
newArr= new int[size];
int counter=0;
while(newArr.size()>counter){
newArr[counter] = randomFill();
System.out.println(newArr[counter]);
counter++;
}
}
public int randomFill()
{
Random rand = new Random();
int num = rand.nextInt(length);
return num;
}
}
我认为测试条件应该是for循环中的index
,因为它是一个基于零的计数。是的,我没有阅读循环的迭代-我会编辑。OP可能想向后打印数组,所以index--
可以工作。啊,我明白你的意思。最初阅读他的帖子时,我以为他只是指一个st标准++迭代
public class RandomArray {
int newArr[];
public RandomArray(int size) {
newArr= new int[size];
int counter=0;
while(newArr.size()>counter){
newArr[counter] = randomFill();
System.out.println(newArr[counter]);
counter++;
}
}
public int randomFill()
{
Random rand = new Random();
int num = rand.nextInt(length);
return num;
}
}