Java基本整数数组
我不明白为什么我的结果不是: 您的第一个数组元素是:0 1. 2. 3. 4. 5. 6. 预期产出 我的代码:Java基本整数数组,java,arrays,Java,Arrays,我不明白为什么我的结果不是: 您的第一个数组元素是:0 1. 2. 3. 4. 5. 6. 预期产出 我的代码: public class day7 { public static void main(String[] args){ int arrayZ[] = new int[7]; arrayZ[0] = 0; System.out.println("Your first array element is: " + arrayZ[0]
public class day7 {
public static void main(String[] args){
int arrayZ[] = new int[7];
arrayZ[0] = 0;
System.out.println("Your first array element is: " + arrayZ[0]);
int i = 1;
while (i <= 6){
arrayZ[i] = i;
i++;
System.out.println(arrayZ[i]);
}
System.out.println("Each entry of the array is: " + arrayZ[0] + " " + arrayZ[1] + " " + arrayZ[2] + " " + arrayZ[3] + " " + arrayZ[4] + " " + arrayZ[5] + " " + arrayZ[6]);
System.out.println("And, the sum of all array elements are: " + arrayZ[0] + arrayZ[1] + arrayZ[2] + arrayZ[3] + arrayZ[4] + arrayZ[5] + arrayZ[6]);
}
}
主线程java.lang.ArrayIndexOutOfBoundsException中的异常:7
在day7.mainday7.java:14
只需在i++和System.out.printlnarayz[i]之间切换行 如果你想计算总和,只需将它们加入一个新的变量或使用
public static void main(String[] args) {
int arrayZ[] = new int[7];
arrayZ[0] = 0;
System.out.println("Your first array element is: " + arrayZ[0]);
int i = 1;
while (i <= 6) {
arrayZ[i] = i;
System.out.println(arrayZ[i]);
i++;
}
System.out.println("Each entry of the array is: " + arrayZ[0] + " " + arrayZ[1] + " " + arrayZ[2] + " " + arrayZ[3] + " " + arrayZ[4] + " " + arrayZ[5] + " " + arrayZ[6]);
System.out.println("And, the sum of all array elements are: " + (arrayZ[0] + arrayZ[1] + arrayZ[2] + arrayZ[3] + arrayZ[4] + arrayZ[5] + arrayZ[6]));
}
只需在i++和System.out.printlnarayz[i]之间切换行 如果你想计算总和,只需将它们加入一个新的变量或使用
public static void main(String[] args) {
int arrayZ[] = new int[7];
arrayZ[0] = 0;
System.out.println("Your first array element is: " + arrayZ[0]);
int i = 1;
while (i <= 6) {
arrayZ[i] = i;
System.out.println(arrayZ[i]);
i++;
}
System.out.println("Each entry of the array is: " + arrayZ[0] + " " + arrayZ[1] + " " + arrayZ[2] + " " + arrayZ[3] + " " + arrayZ[4] + " " + arrayZ[5] + " " + arrayZ[6]);
System.out.println("And, the sum of all array elements are: " + (arrayZ[0] + arrayZ[1] + arrayZ[2] + arrayZ[3] + arrayZ[4] + arrayZ[5] + arrayZ[6]));
}
更改为:
while (i <= 6){
arrayZ[i] = i;
System.out.println(arrayZ[i]);
i++;
}
因为您使用它的方式,它尝试打印不存在的arrayZ[7]。更改为:
while (i <= 6){
arrayZ[i] = i;
System.out.println(arrayZ[i]);
i++;
}
因为您使用它的方式,它尝试打印不存在的arrayZ[7]。您的代码是正确的,唯一的问题是递增和打印的顺序 此外,您还需要首先对项目求和,因此需要使用括号,然后使用+和字符串将其他变量转换为字符串,并显示连接的结果。输出为: 您的第一个数组元素是:0 1. 2. 3. 4. 5. 6. 数组的每个条目都是:0 1 2 3 4 5 6 所有数组元素之和为:21
如果循环计数器的固定界限是1到6,那么最好使用for循环。您的代码是正确的,唯一的问题是递增和打印的顺序 此外,您还需要首先对项目求和,因此需要使用括号,然后使用+和字符串将其他变量转换为字符串,并显示连接的结果。输出为: 您的第一个数组元素是:0 1. 2. 3. 4. 5. 6. 数组的每个条目都是:0 1 2 3 4 5 6 所有数组元素之和为:21 如果在本例中循环计数器的边界是1到6,那么最好使用for循环
只需在i++和System.out.printlnarayz[i]之间切换行 如果你想计算总和,只需将它们加入一个新的变量或 使用 }
只需在i++和System.out.printlnarayz[i]之间切换行 如果你想计算总和,只需将它们加入一个新的变量或 使用 }
更改while循环代码如下
while (i <= 6){
arrayZ[i] = i;
System.out.println(arrayZ[i]);
i++;
}
更改while循环代码如下
while (i <= 6){
arrayZ[i] = i;
System.out.println(arrayZ[i]);
i++;
}
调用i++;在System.out.printlnarayz[i]之后;在调试器中逐步执行代码,例如,使用IntelliJ IDEA,您将看到错误所在。当您使用依赖inc/decrement sentinel值的while循环时,即。;在您的例子中,for循环通常是更简洁的选项。对于int i=0;我称之为i++;在System.out.printlnarayz[i]之后;在调试器中逐步执行代码,例如,使用IntelliJ IDEA,您将看到错误所在。当您使用依赖inc/decrement sentinel值的while循环时,即。;在您的例子中,for循环通常是更简洁的选项。对于int i=0;我非常感谢你。您的评论非常清晰,非常有用。您只需将其替换为i++to System.out line…因为它的数组将由i++绑定到最后一个索引上。非常感谢。您的评论非常清晰,非常有用。您只需将其替换为i++to System.out line…因为它的数组将由i++绑定到最后一个索引上。谢谢:现在我明白了谢谢:现在我明白了这就是我的想法:我就是这么想的3.