我更改了第一个System.out.println语句,但我仍然没有看到任何内容!我唯一得到的是Build Successful,但没有用户输入的输出!!
//initializes the array to have a limit of 10 numbers inputted
double[] numbers = new double [10];
// this loop reads in the numbers inputed from the array
for (int i = 0; i < numbers.length; i++) {
numbers[i] = input.nextDouble();
}
System.out.println("Enter " + numbers.length + " values: ");
java.util.Arrays.sort(numbers);// this is the Array.sort()method
// this loop sorts the numbers and then prints them
for(double number : numbers){
System.out.println(number);
}
}
}
答案 0 :(得分:3)
您的程序有效,但您可能不会很好地使用它,因为您在输入每个数字后仍会看到输入10个值:。
尝试移动
System.out.println("Enter " + numbers.length + " values: ");
到 for 循环之外。然后输入10个数字,您将看到输出。
顺便说一下,如果你没有将它移到for
循环之外,你的程序也可以运行,但是......就像你看到的那样,这是误导性的。
下次使用调试器。这太棒了..我有时甚至会调试一个正常工作的代码..只是因为它太棒了:)。
答案 1 :(得分:1)
你正在获得输出,而不是在你认为应该的时候。因为您在打印语句之前放置了numbers[i] = input.nextDouble()
,所以控制台在打印消息之前正在等待输入。我敢打赌,如果你运行程序,输入一个数字,然后点击回车,你将收到你认为应该看到的消息。解决方案只是在for
循环中切换这两行代码。