gpt4 book ai didi

java - 从现有数组中创建新数组错误

转载 作者:太空宇宙 更新时间:2023-11-04 06:32:53 25 4
gpt4 key购买 nike

我正在尝试根据每个元素的值从现有数组中创建一个新数组。如果现有数组中的某个数字符合给定的条件,则需要将该数字添加到新数组中,但新数组中的值均为 0。

这段代码有什么问题吗?

double[] gpa = {1.0, 2.0, 3.0, 4.0, -1.0, 5.0};
double[] newGpa = null;
for (int i = 0; i < gpa.length; i++) {
if (gpa[i] > 0 && gpa[i] <= 4.0) {
newGpa = new double[i + 1];
newGpa[i] = gpa[i];
}
}

最佳答案

我可能会建议这样:

 double[] gpa = {1.0, 2.0, 3.0, 4.0, -1.0, 5.0};
//create a new array with one index less
double[] newGpa = new double[gpa.length - 1];
for (int i = 0; i < gpa.length; i++) {
if (gpa[i] > 0 && gpa[i] <= 4.0) {
newGpa[i] = gpa[i];
}
}

但是使用像 ArrayList 这样的动态数据结构,然后使用下面的方法处理后将其转换为数组会更聪明。

 newGpa = list.toArray(new String[list.size()]);

关于java - 从现有数组中创建新数组错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25860302/

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