gpt4 book ai didi

java - 使用数组 Java 更新值后循环遍历 ArrayList

转载 作者:行者123 更新时间:2023-12-02 02:20:47 26 4
gpt4 key购买 nike

我正在寻求有关我的程序的一部分的帮助。我想知道如何在删除或保留 ArrayList 中的“学生”之前循环遍历整个“学生”ArrayList。 updateStatus 方法参数是一个 int 并返回一个 boolean 值:如果学生拥有毕业所需的学分,则返回 true;如果没有足够的学分,则返回 false。如果您希望我发布我的 updateStatus 代码(我知道它 100% 准确),我可以这样做。

这是我遇到问题的 for 循环:

ArrayList<Student> students = new ArrayList<Student>();        
int [] updates = {4, 7, 8, 6, 15, 10, 30, 31, 5, 7, 127, 21}; //this is the array of values being input to updateStatus

for (int i = 0; i < students.size(); i++){
for(Student x: students){
if(x.updateStatus(updates[i])){
System.out.println(students.remove(i)+"\nCongratulations Graduate!");
}
}
}

提前非常感谢您!

最佳答案

<小时/>

看来您的整数数组包含每个学生拥有的所有学分。学生 x 有 4 个学分,下一个学生有 7 个学分,依此类推。如果这是真的,称其为更新绝对没有意义。更恰本地命名你的变量,否则,这个例子肯定很难理解。为什么不将学分与 Student 对象关联起来,并在循环时调用 getCredits() 等方法来检查他们的学分。此外,在您的学生对象中,您可以有一个字段 isGraduate,它是一个 boolean 值,表示学生是否有资格毕业。每次学生获得学分时都会检查该值..因此它会定期检查。

这段代码非常困惑,你在循环学生人数的同时循环学生人数......你不能这样做。

此外,您似乎正在输出中调用方法名称​​.remove。不知道这个方法的作用,但我没有看到应该将其放置在 System.out.println 中的情况...如果该方法从列表中删除学生,这将是分别扰乱你的循环并导致问题。

目前尚不清楚您的目标是什么,如果您不确定自己想要实现什么目标,那么不幸的是,这里没有人能够帮助您。

关于java - 使用数组 Java 更新值后循环遍历 ArrayList,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48533222/

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