java - if 语句和 for 循环中 ArrayList 的问题

标签 java if-statement for-loop arraylist bluej

我有一个关于 for 循环和 ArrayList 的问题。我有一个包含字符串和整数的 HashMap,其中字符串代表类(class),整数代表年级。他们有一个 ArrayList 中的学生集合。所以我想做的是找到 ArrayList 中学生的平均成绩。这是该类的代码:

import java.util.ArrayList;

public class BachelorStudenter {

  private ArrayList<BachelorStudent> bs;

  public Bachelorstudenter() {    
      bs = new ArrayList<>();
  }

  public int bsGjennomsnitt() {    
     int sum = 0;
     int gjennomsnitt = 0;

     if(!bs.isEmpty()){
        for(BachelorStudent b : bs.values){
           sum += b.finnGjennomsnitt();
        }
        return gjennomsnitt;
     }else {        
        return 6;
     }
  } 
}

我知道 if 语句中的 for 循环中的 bs.values 是错误的,但我尝试用谷歌搜索我应该使用的内容,但 .contains 或 .size 都不起作用。

哦,我还有另一个类BachelorStudent,我可以在其中创建BachelorStudent的对象,并将其放入BachelorStudent的ArrayList中。

有人知道我需要在那里放什么吗?

最佳答案

如果您想要返回所有学生的平均成绩,您可以执行以下操作:

import java.util.ArrayList;
public class Bachelorstudenter {

    private ArrayList<Bachelorstudent> bs;

    public Bachelorstudenter() {    
        bs = new ArrayList<>();
    }

    public double bsGjennomsnitt() {    
        double sum = 0.0;
        double gjennomsnitt = 6.0;

        if(!bs.isEmpty()){
            for(Bachelorstudent b : bs){
                sum += b.finnGjennomsnitt();
            }
            gjennomsnitt = sum/bs.size()
        } 
        return gjennomsnitt;
    } 
}

请注意,我将返回值sumgjennomsnitt更改为double,因为平均值也可能是非整数值。 答案还假设 b.finnGjennomsnitt() 返回学生参加的所有类(class)的平均值并返回该值。如果您只想返回一个类(class)中所有学生的平均值,则答案不会给您这个。请在您的问题中注明,如果这是问题的一部分,还请包含 finnGjennomsnitt() 的代码。 如果没有学生,答案中的方法将返回 6.0 作为平均值,如问题中的代码所示。也许应该重新考虑这一点,因为这使得成绩直达 6.0 的特殊学生群体的情况与没有学生的情况相同。也许当没有学生时你可以返回-1?

关于java - if 语句和 for 循环中 ArrayList 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42513460/

相关文章:

java - 如何停止和恢复 Observable.interval 发出滴答声

java - 用Java有效解析Excel数据

java - 除了 String 之外,哪些内置 java 类使用池化?

python - 如果,if-else和Elif语句

Python:使用for循环将int列表修改为str列表

c - C 循环 For Vs While Vs goto 的性能

java - HTML 的 CDATA 替代品

jquery - Laravel if 条件查询

javascript - 如何使用 If 语句在 Javascript 中对不同 ID 使用相同的函数

python - 更高效地过滤多个列表和嵌套 for 循环