英文:
Store results of for loop in array
问题
我正在尝试循环遍历从-6到38的数字,并将奇数输出到一个数组中。我不知道如何将输出存储到一个数组中。
# 用于存储奇数的数组
odd_numbers = []
for i in range(-6, 38):
if i % 2 != 0:
odd_numbers.append(i)
或者如果你更喜欢使用数组生成式:
# 使用数组生成式存储奇数的数组
odd_numbers = [i for i in range(-6, 38) if i % 2 != 0]
英文:
I'm trying to loop through numbers from -6 to 38, and output the odd numbers into an array. I don't know how to store the output into an array.
for (int i = -6; i<38; i++){
if (i%2!=0){
**output to array**
}
}
答案1
得分: 1
因为我们无法知道奇数的数量,所以如果你的Java版本是8或以上,你可以使用IntStream来解决这个问题。
int[] array = IntStream.range(-6, 38).filter(x -> x % 2 != 0).toArray();
或者你可以使用ArrayList:
List<Integer> list = new ArrayList<>();
for (int i = -6; i < 38; i++) {
if (i % 2 != 0) {
list.add(i);
}
}
英文:
Because we are not able to know how many the number of the odd numbers is, so you can use IntStream to fix this issue if your java version is 8 or above.
int[] array = IntStream.range(-6, 38).filter(x -> x % 2 != 0).toArray();
Or you can use ArrayList
List<Integer> list = new ArrayList<>();
for (int i = -6; i < 38; i++) {
if (i % 2 != 0) {
list.add(i);
}
}
答案2
得分: 0
由于数组中元素的数量可能无法预先确定,您可以创建一个列表,然后按如下方式转换为数组:
List<Integer> oddNumbers = new ArrayList<>();
for (int i = -6; i < 38; i++) {
if (i % 2 != 0) {
oddNumbers.add(i);
}
}
Integer[] result = oddNumbers.toArray(new Integer[oddNumbers.size()]);
英文:
As the number to elements in array can not be always defined in advance. You can create a list and then convert that to array as below:
List<Integer> oddNumbers = new ArrayList<>();
for (int i = -6; i<38; i++){
if (i%2!=0){
oddNumbers.add(i);
}
}
Integer[] result = oddNumbers.toArray(new Integer[oddNumbers.size()]);
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论