先定义Student类存储姓名和成绩,再用ArrayList收集学生数据,通过Scanner录入信息,遍历集合计算平均分、最高分、最低分及对应学生,最后格式化输出结果。

在Java中实现一个成绩分析小程序,主要是通过定义学生数据结构、录入成绩、计算统计信息(如平均分、最高分、最低分)并输出结果。整个过程不需要复杂框架,使用基础语法和集合类即可完成。下面一步步说明如何构建这样一个实用的小程序。
定义学生和成绩数据结构
先创建一个简单的类来表示学生信息,包含姓名和成绩:
class Student {
String name;
double score;
public Student(String name, double score) {
this.name = name;
this.score = score;
}}
这个类便于后续将多个学生对象存入集合中统一处理。
立即学习“Java免费学习笔记(深入)”;
录入成绩并存储到集合
使用 ArrayList 存储多个学生对象,通过 Scanner 接收用户输入:
import java.util.ArrayList; import java.util.Scanner;ArrayList
students = new ArrayList<>(); Scanner input = new Scanner(System.in); System.out.print("请输入学生人数:"); int count = input.nextInt();
for (int i = 0; i < count; i++) { System.out.print("第" + (i+1) + "个学生姓名:"); String name = input.next(); System.out.print("成绩:"); double score = input.nextDouble(); students.add(new Student(name, score)); }
这样就完成了数据的收集和存储。
该网站程序ASP+Access开发,拥有完善的网站前台和后台管理功能,前台完全纯Html生成,本套源适合大部分中小企业建站需求。 网站前台生成PC版和WAP版,适合现在主流推广方式一、网站管理非常简单易用 二、单页介绍系统、图文展示、文章管理三、前台纯HTML静态文件生成四、前台生成PC和WAP两个版本,更实用
计算常用分析指标
遍历集合,计算平均分、最高分、最低分,并记录对应学生姓名:
double sum = 0; double maxScore = students.get(0).score; double minScore = students.get(0).score; String topStudent = students.get(0).name; String lowStudent = students.get(0).name;for (Student s : students) { sum += s.score; if (s.score > maxScore) { maxScore = s.score; topStudent = s.name; } if (s.score < minScore) { minScore = s.score; lowStudent = s.name; } }
double average = sum / students.size();
这些统计值可以直观反映整体学习情况。
输出分析结果
将计算结果格式化输出,提升可读性:
System.out.println("\n--- 成绩分析结果 ---");
System.out.printf("总人数:%d\n", students.size());
System.out.printf("平均分:%.2f\n", average);
System.out.printf("最高分:%.2f (%s)\n", maxScore, topStudent);
System.out.printf("最低分:%.2f (%s)\n", minScore, lowStudent);
加上简单的格式控制,让结果显示更清晰。
基本上就这些。这个小程序结构清晰,适合初学者练习面向对象编程和集合操作。后续还可以扩展功能,比如按分数段统计人数、判断是否及格、保存到文件等。不复杂但容易忽略细节,比如输入验证和边界处理,实际使用时建议加上 try-catch 防止输入异常。









