本文介绍了如何使用 Java 中的 LinkedHashMap 实现一个简单的等级评分系统。该系统根据用户输入的成绩,从预定义的成绩等级映射关系中查找对应的等级,并输出结果。文章将详细讲解代码实现,并提供优化建议,帮助读者理解 HashMap 的使用,并将其应用于实际场景中。
在许多场景下,我们需要根据不同的分数范围给出相应的等级,例如考试成绩评定。使用 HashMap 可以方便地实现这种映射关系,提高代码的可读性和可维护性。
以下是一个使用 LinkedHashMap 实现等级评分系统的示例代码:
import java.util.LinkedHashMap;
import java.util.Scanner;
import java.util.InputMismatchException;
public class GradingSystem {
public static void main(String[] args) {
try {
// 使用 LinkedHashMap 保持插入顺序
LinkedHashMap scoreMap = new LinkedHashMap<>();
scoreMap.put("Fail", 39);
scoreMap.put("Third Class", 49);
scoreMap.put("Second Class, Division 2", 59);
scoreMap.put("Second Class, Division 1", 69);
scoreMap.put("First Class", 70);
Scanner scanner = new Scanner(System.in);
System.out.println("What was your mark?");
int mark = scanner.nextInt();
if (mark > 100 || mark < 0) {
System.out.println("Invalid Input: out of range.");
return;
}
for (String grade : scoreMap.keySet()) {
if (mark <= scoreMap.get(grade)) {
System.out.println("You got a " + grade);
break;
}
}
} catch (InputMismatchException e) {
System.out.println("Invalid Input, program terminating");
}
}
} 代码解释:
本文介绍了如何使用 LinkedHashMap 实现一个简单的等级评分系统。通过使用 HashMap,我们可以方便地存储和查找等级和分数阈值的映射关系。在实际应用中,需要根据具体需求调整等级划分和分数阈值,并进行充分的测试,确保系统的正确性和稳定性。