【发布时间】:2018-06-22 18:25:22
【问题描述】:
为什么我的代码不起作用?我想要以下内容:一个人输入一个数字,程序会打印出所有数字,直到输入的数字。这是我更大的代码问题的一部分。这就是为什么使用 while(true)-loop 和 break 以及稍后将打印出来的数组对我来说很重要。
让它运行,输入一个数字后它只会说:
“线程“主”中的异常 java.lang.ArrayIndexOutOfBoundsException: 5 在 yt_brotcr_15ff.yt_brotcr_19_Schmierzettel5.main(yt_brotcr_19_Schmierzettel5.java:14)"
有什么问题?
代码如下:
package yt_brotcr_15ff;
import java.util.Scanner;
public class yt_brotcr_19_Schmierzettel5 {
public static void main (String[] args) {
int i = 0;
int hochzähl = 1;
int eingabeB;
Scanner s = new Scanner(System.in);
eingabeB = s.nextInt();
int[] zahlArray = new int[eingabeB];
while (true) {
zahlArray[i] = hochzähl;
if (i > eingabeB) {
break;
}
i++;
hochzähl++;
}
for (int j = 0; j > eingabeB; j++) {
System.out.println(zahlArray[j]);
}
}
}
【问题讨论】:
-
使用arraylist代替array,了解静态和动态数组初始化,....在你的最后一个for循环中使用j