通过 Void 方法设置实例变量而不是获取 Return 值
Set Instance Variables by Void Method instead of Getting Return Values
我有一个默认构造函数setStudent
:
public void setStudent (String sName, int sTest1, int sTest2, int sTest3, int sTest4, double sOverall, String sGrade) {
name = sName;
test1 = sTest1;
test2 = sTest2;
test3 = sTest3;
test4 = sTest4;
overallMarks = sOverall;
grade = sGrade;
}
* 以及每个变量的要求 setters
和 getters
。
我从用户那里得到 test1
test2
test3
test4
的输入。
overallMarks
通过 calOverall
:
计算
public double calOverall(int t1, int t2, int t3, int t4) {
double o = (((a1 / 100.0) * 20) + ((a2 / 100.0) * 20) + ((p / 100.0) * 10) + ((e / 100.0) * 50));
return o;
}
grade
是根据 overallMarks
通过 calGrade
计算得出的:
public String calGrade(double overallMarks) {
if (overallMarks >= 85) {
return "A";
} else if (o >= 70) {
return "B";
} else if (o >= 60) {
return "C";
} else if (o >= 50) {
return "D";
} else {
return "F";
}
}
我的 main
在获取所有输入后创建学生对象的方法:
*目前正在使用 returns 值
的所有功能
overall = studentList[studentIndex].calOverall(test1, test2, test3, test4);
grade= studentList[studentIndex].calGrade(overall);
studentList[studentIndex].setStudent(name, test1, test2, test3, test4, overall, grade);
但是,我意识到我的项目需要我通过设置适当实例变量的 void 方法来计算总分和成绩。
我可以知道如何将 overall
和 grade
的计算设置为无效方法吗?
也许您没有返回值,而是将其保存在 overallMarks
变量中。
calOverall
是void方法,计算整体,保存
public void calOverall(int t1, int t2, int t3, int t4) {
overallMarks = (((a1 / 100.0) * 20) + ((a2 / 100.0) * 20) + ((p / 100.0) * 10) + ((e / 100.0) * 50));
}
然后使用您的 getter 方法来使用该值
public double getOverallMarks() {
return overallMarks;
}
在您调用的 main
方法中
studentList[studentIndex].calOverall(test1, test2, test3, test4);
然后取值:
double overall = studentList[studentIndex].getOverallMarks();
我有一个默认构造函数setStudent
:
public void setStudent (String sName, int sTest1, int sTest2, int sTest3, int sTest4, double sOverall, String sGrade) {
name = sName;
test1 = sTest1;
test2 = sTest2;
test3 = sTest3;
test4 = sTest4;
overallMarks = sOverall;
grade = sGrade;
}
* 以及每个变量的要求 setters
和 getters
。
我从用户那里得到 test1
test2
test3
test4
的输入。
overallMarks
通过 calOverall
:
public double calOverall(int t1, int t2, int t3, int t4) {
double o = (((a1 / 100.0) * 20) + ((a2 / 100.0) * 20) + ((p / 100.0) * 10) + ((e / 100.0) * 50));
return o;
}
grade
是根据 overallMarks
通过 calGrade
计算得出的:
public String calGrade(double overallMarks) {
if (overallMarks >= 85) {
return "A";
} else if (o >= 70) {
return "B";
} else if (o >= 60) {
return "C";
} else if (o >= 50) {
return "D";
} else {
return "F";
}
}
我的 main
在获取所有输入后创建学生对象的方法:
*目前正在使用 returns 值
的所有功能overall = studentList[studentIndex].calOverall(test1, test2, test3, test4);
grade= studentList[studentIndex].calGrade(overall);
studentList[studentIndex].setStudent(name, test1, test2, test3, test4, overall, grade);
但是,我意识到我的项目需要我通过设置适当实例变量的 void 方法来计算总分和成绩。
我可以知道如何将 overall
和 grade
的计算设置为无效方法吗?
也许您没有返回值,而是将其保存在 overallMarks
变量中。
calOverall
是void方法,计算整体,保存
public void calOverall(int t1, int t2, int t3, int t4) {
overallMarks = (((a1 / 100.0) * 20) + ((a2 / 100.0) * 20) + ((p / 100.0) * 10) + ((e / 100.0) * 50));
}
然后使用您的 getter 方法来使用该值
public double getOverallMarks() {
return overallMarks;
}
在您调用的 main
方法中
studentList[studentIndex].calOverall(test1, test2, test3, test4);
然后取值:
double overall = studentList[studentIndex].getOverallMarks();