Java列表<整数>
我有以下方法:
public static List<Integer> gradingStudents(List<Integer> grades) {
for(int i = 0; i < grades.size(); i++){
if(grades.get(i) < 40)
continue;
else if(grades.get(i) % 5 < 3)
grades.get(i) = grades.get(i) + (Math.abs(grades.get(i)%5-5));
else
continue;
}
return grades;
}
我在else if部分遇到了意外的类型错误。为什么我不能grades像上面代码中写的那样更改 的元素?
回答
您不能分配给grades.get(i).
我建议您按如下方式简化代码:
public static List<Integer> gradingStudents(List<Integer> grades) {
for(int i = 0; i < grades.size(); i++){
int grade = grades.get(i);
if (grade >= 40 && grade % 5 < 3) {
grades.set(i, grade + Math.abs(grade%5-5));
}
}
return grades;
}
- @bravoJohnny [What should I do when someone answers my question?](https://stackoverflow.com/help/someone-answers)