Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/341.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java打印数组的内容_Java_Arrays_Printing - Fatal编程技术网

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;
    }


}