编写程序练习 List 集合的基本使用
1条回答 默认 最新
- a5156520 2021-11-10 21:51关注
Student类:
public class Student { public String name; public double grade; public Student(String name,double grade) { this.name = name; this.grade = grade; } public String getName() { return name; } public void setName(String name) { this.name = name; } public double getGrade() { return grade; } public void setGrade(double grade) { this.grade = grade; } @Override public String toString() { return "学生信息-- 名字:" + name + ", 成绩:" + grade + "。\n"; } }
StudentManager类:
import java.util.ArrayList; public class StudentManager { ArrayList<Student> list = new ArrayList<Student>(); //添加学生 public void addStudent(Student stu) { list.add(stu); } public Student queryStudent(String name) { int len = list.size(); int i = 0; while(i<len) { Student stu = list.get(i); if(stu.getName().equals(name)) { return stu; //结果返回指定名字的Student学生类实例对象 } i++; } return null; //表示没有查询到指定名字的学生 } public boolean removeStudent(String name) { int len = list.size(); int i = 0; while(i<len) { Student stu = list.get(i); if(stu.getName().equals(name)) { list.remove(i); return true; //删除成功 } i++; } return false; //表示删除失败 } public void statisticsStudentsGrade() { int len = list.size(); double avg=0; double high=0; double low=list.get(0).getGrade(); double total=0; double grade=0; int i = 0; while(i<len) { Student stu = list.get(i); grade = stu.getGrade(); total += grade; if(grade>=high) { high = grade; }else if(grade<=low) { low = grade; } i++; } System.out.println("学生共"+len+"人,最高分:"+high +",最低分:"+low+",平均分:"+total/len); } }
Test类:
public class Test { public static void main(String[] args) { // TODO Auto-generated method stub StudentManager manager = new StudentManager(); Student s1 = new Student("张三",100); Student s2 = new Student("李四",85); Student s3 = new Student("王五",96); manager.addStudent(s1); manager.addStudent(s2); manager.addStudent(s3); manager.statisticsStudentsGrade(); } }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥20 求各位懂行的人,注册表能不能看到usb使用得具体信息,干了什么,传输了什么数据
- ¥15 个人网站被恶意大量访问,怎么办
- ¥15 Vue3 大型图片数据拖动排序
- ¥15 Centos / PETGEM
- ¥15 划分vlan后不通了
- ¥15 GDI处理通道视频时总是带有白色锯齿
- ¥20 用雷电模拟器安装百达屋apk一直闪退
- ¥15 算能科技20240506咨询(拒绝大模型回答)
- ¥15 自适应 AR 模型 参数估计Matlab程序
- ¥100 角动量包络面如何用MATLAB绘制