【发布时间】:2018-04-25 15:05:50
【问题描述】:
我正在尝试为以下整数数组编写一个 for 循环。数组的大小是 10。我写了两个循环。第一个循环将增加值,第二个循环将打印结果,如元素 1 为 10,元素 2 为 20。但我一直得到 0。我给出了以前的代码,一切都很好。出于测试原因,我想实现增强的 for 循环。但是我遇到了两个问题,如何增加值以及如何定义数组长度。这是我的代码。
public static void main(String[] args) {
int[] myIntArray = new int[10];
for(Integer num: myIntArray){
myIntArray[num]=num*10;
}
for(int num:myIntArray){
System.out.println("Element " + num + ", value is " + myIntArray[num]);
}
}
以前的代码
int[] myIntArray =new int[10];
for(int i =0; i<myIntArray.length;i++){
myIntArray[i]=i*10;
}
for(int i=0;i<myIntArray.length;i++){
System.out.println("Element " + i + ", value is " + myIntArray[i]);
}
【问题讨论】:
-
num*10num的初始值是多少?它是0,因此你所做的就是将一些东西与0相乘 -
你没有问问题
-
num*10始终为0,因为这是ints 的默认值。你没有在你的数组中放任何元素,所以每个元素都是0 -
初始化时
int的默认值为0。你将 0 乘以任何东西,它会返回 0 -
仅仅因为它被称为“增强”并不意味着它对一切都更好。通过使用带有 interation-counter 变量的普通 for 循环显然可以更好地满足您的要求,所以只需使用它。