【发布时间】:2015-11-10 23:14:53
【问题描述】:
我一直在四处寻找答案,并且总是找到部分回答了我的问题的东西。所以,这是我现在的代码:
import java.util.Scanner;
public class VelikaDN {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("Enter numbers: ");
int[] array = new int[100];
for (int i = 0; i < array.length; i++) {
array[i] = input.nextInt();
// Number of elements
int counter = 0;
for (int j = 0; j < array.length; j++) {
if (array[j] != 0)
counter++;
}
System.out.println("This array has " + counter + " numbers.");
}
}
}
它有效,但最后我注意到一些事情并不像我想象的那么小。这是输出:http://i.imgur.com/3mmEpUb.png 我试图在整个代码中重新定位打印,试图以某种方式停止循环,但我失败了。我真的不知道是什么问题了。我试图放弃这个问题并执行另一项任务,但正如我已经说过的,循环之外的任何内容都没有出现。
如果这令人困惑,我很抱歉,我是 Java 新手,而且我也很不擅长解释。如果您有一些提示或替代解决方案,请随意将其扔在这里。如果我还有什么需要解释的,那就直说吧。
【问题讨论】:
-
我很困惑。究竟是什么问题?
-
这只是我正在做的程序的开始,现在这就是问题所在,是的。但是,当我尝试在第一个 for 循环之外使用 array.length 时,我无法做到。
-
输入100个数字后循环结束!!!
-
安德烈亚斯我认为他只计算不同于 0 的数字。或者这就是它的样子
-
@VelkoGeorgiev 外部
for循环将运行100 次,每次从Scanner中取一个数字,等待更多输入。所以在输入 3 个号码后,它就坐在那里等待更多号码,直到处理完 100 个号码才会退出。
标签: java arrays loops java.util.scanner