2015-11-19 52 views
1

我想要做的是将我的数组的每个元素输出到系统。下面是如何输入数组元素,以及我的问题。为什么它不输出数组元素?为什么我的程序不能输出我的数组元素?

for (int i = 0; i <arrayLength; i++) { 
    double array[] = new double[arrayLength]; 
    array[i] = IO.readInt("Enter number: " + (i+1)); 
    count++; 
} 
for (int i = 0; i <arrayLength; i++) { 
    System.out.println(array[i]); 
} 
+11

您每次都通过第一个循环创建一个新数组。 –

+0

对你的代码的评论:请不要写'double array []',而应该使用'double [] array'。虽然这两者都是合法的,但前者是定义数组的C风格。在Java中,最好在类型旁边写括号,因为它们会影响变量的类型。 – Turing85

+0

嗯。我应该发布剩余的代码吗? –

回答

2

这是因为您每次都在第一个循环中创建一个新数组。你必须在循环之前声明数组。

double array[] = new double[arrayLength]; 

for (int i = 0; i <arrayLength; i++) 
{ 
    array[i] = IO.readInt("Enter number: " + (i+1)); 
} 
for (int i = 0; i <arrayLength; i++) 
{ 
    System.out.println(array[i]); 
} 
+5

请不要仅提供代码解答。 – Turing85

+1

是的,他是对的。这是我正在寻找的答案,非常感谢。 –

0

您正在每次迭代中创建一个新数组,因此请保持数组声明在循环外部。

double array[] = new double[arrayLength]; 
for (int i = 0; i <arrayLength; i++) 
{ 
    array[i] = IO.readInt("Enter number: " + (i+1)); 
    System.out.println(array[i]); //reference the value saved in variable out of the for scope. 
} 
相关问题