gpt4 book ai didi

java - 增强的 For 循环 Java

转载 作者:行者123 更新时间:2023-11-29 10:09:15 25 4
gpt4 key购买 nike

我正在尝试为以下整数数组编写一个 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]);
}

最佳答案

首先你必须用索引填充数组:

    Arrays.setAll(myIntArray, i -> i);

在那之后,在输出过程中你不应该尝试获取值作为 myIntArray[num],因为使用增强的 for 循环你已经有了一个值,但没有它的索引。所以结果代码应该是这样的:

public static void main(String[] args) {
int[] myIntArray = new int[10];

Arrays.setAll(myIntArray, i -> i);

for(Integer num: myIntArray){
myIntArray[num]=num*10;
}

for(int num : myIntArray){
System.out.println("Element " + num/10 + ", value is " + num);

}
}

尽管我同意之前评论者的观点,即增强循环不是使用数组索引的正确选择。

关于java - 增强的 For 循环 Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50025630/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com