java - 我如何从其他类中获取方法结果?
问题描述
我有 2 个构造函数类,课程和学生。学生班级有考试成绩和计算这些考试平均值的方法。课程类有学生数组列表,我的目标是获取数组中所有学生的平均分数并计算平均分数,但我不明白如何获取平均值(来自学生类的平均方法的结果)并在平均方法中使用它在课程课上。
我尝试在 Student 类中创建另一种方法 getAverage,然后在 Course 类中为每个学生以 average 方法调用它。但那是不允许的,也不确定这是否可行。
public Student(String first, String last, Address home, Address school) {
firstName = first;
lastName = last;
homeAddress = home;
schoolAddress = school;
}
public double average() {
avg = (test1 + test2 + test3) / 3.0;
return avg;
}
// Thats part of Student class
public Course(String name) {
courseName = name;
students = new ArrayList<Student>();
}
public boolean addStudent(Student person) {
if (!students.contains(person)) {
students.add(person);
return true;
}
return false;
}
public double average() { // Having trouble with creating this method
}
如果需要,我可以提供更多信息。提前致谢 !编辑:添加我尝试过的内容。
public double getAverage() {
return avg;
}
// GetAverage method in Student class
public double average() { // average method i tried in Course class
double average, studentAvg, sum;
studentAvg.getAverage(); // It isses error at this line
sum += studentAvg;
average = sum / students.size();
return average;
}
解决方案
为了获得学生的总平均数,需要迭代所有学生并计算总平均数。
Summation of All student average / number of students.
public double average() {
if (students.isEmpty()) {
return 0;
}
double sum = 0;
for (Student s: students) {
sum += s.average();
}
return sum/students.size();
}
推荐阅读
- react-native - 在应用程序中使用 redux 状态时,切换检查器不起作用
- python-3.x - 即使我得到很好的输出也会出错
- python - 如何在python中使用GEV估计最大似然
- pdf - 使用 OpenPDF 的 PDF 每一页上的矩形页眉和页脚块
- python - 在 Python 中连接两个字符串的最快方法
- excel - 如何在使用“X”按钮关闭第二个用户表单后显示用户表单(终止事件中断代码)
- python - 从数据框生成网络图
- kubernetes - 初始化 Kubernetes 集群时如何指定网络接口?
- r - Returning a true value if it is a close match among different columns in r
- javascript - MetaMask - RPC 错误:权限请求已经挂起,在 Angular 10 中