正如標題所示。我需要在90-100分之間得分「A」的返回位置的功能。或者在這種情況下,無論用戶決定根據曲線還是其他東西設置截斷值。這就是我所擁有的,但我想不出一種辦法讓它達到我想要的效果。使用鍵映射到一系列值。信函等級考試成績示例
private HashMap<String, Double> letterGrade = new HashMap<String, Double>();
public void setgradeCutOff(String[] letterGrades, double[] cutoffs) {
for(int i = 0; i < letterGrades.length; i++){
letterGrade.put(letterGrades[i], cutoffs[i]);
}
}
public String getGrade(String studentName) {
//Returns a student's average score for all exams
double averageScore = getAverageExamGrade(studentName);
for(Entry<String, Double> entry : letterGrade.entrySet()){
if(entry.getValue() == averageScore){
return entry.getKey();
}
}
return null;
}
這隻有在averageScore恰好是截斷值之一時纔有效。我如何修改它以便字符串鍵映射到setGradeCutOff方法指定的範圍?
這是我期望它的工作:
setLetterGradesCutoffs(new String[]{"A","B","C","D","F"},
new double[] {85,70,60,50,0});
Laura. Average exam score: 87 Grade: A
Peter. Average exam score: 72 Grade: B
Miranda. Average exam score: 67 Grade: C
你的問題是完全不清楚。你需要一個更確切的問題陳述。 –
什麼部分不清楚?如果需要,我可以對它進行編輯,但我認爲這是對它的充分描述。用戶指定截止點,並根據該等級確定等級。我將添加一個功能的例子。 –
@SeanF在閱讀了幾次這樣的問題後,我仍然不明白這個想法。你想要平均分數還是什麼?當你的意思是切斷什麼?我可以用我以前在學校任務中所做的任何解釋來解釋這個問題,但這個問題並不清楚。 –