Java ArrayList实现班级信息管理系统
作者:大菜彩 发布时间:2023-09-17 15:15:25
标签:java,班级,管理系统
ArrayList实现班级信息管理系统,供大家参考,具体内容如下
代码如下:
import java.util.*;
public class Demo1 {
public static void main(String[] args) {
Manage M = new Manage();
Scanner reader = new Scanner(System.in);
while (true) {
System.out.println("0.加载原有信息");
System.out.println("1.添加学生信息");
System.out.println("2.根据信学号查看学生信息");
System.out.println("3.修改学生综合考评成绩");
System.out.println("4.删除学生信息");
System.out.println("5.根据综合考评排名");
System.out.println("6.打印所有学生的信息");
System.out.println("7.退出系统");
System.out.print("请输入您选择的功能【0~7】:");
int x;
x = reader.nextInt();
switch (x) {
case 0:
Student f = new Student("2018", "李小龙", 23, '男', 98.56);
Student g = new Student("2019", "鱼幼薇", 31, '女', 77.42);
Student h = new Student("2020", "季长风", 17, '男', 85.56);
Student o = new Student("2021", "轩辕辰", 12, '男', 56.42);
Student p = new Student("2022", "徐凤年", 25, '男', 95.01);
M.addStudent(f);
M.addStudent(g);
M.addStudent(h);
M.addStudent(o);
M.addStudent(p);
System.out.println("加载信息成功!");
break;
case 1:
String id;
String name;
int age;
char sex;
double result;
System.out.println("请输入学生学号 姓名 年龄 性别 综合考评成绩(中间以空格隔开):");
id = reader.next();
// System.out.println("请输入学生姓名:");
name = reader.next();
// System.out.println("请输入学生年龄:");
age = reader.nextInt();
// System.out.println("请输入学生性别:");
sex = reader.next().charAt(0);
// System.out.println("请输入学生学综合考评成绩:");
result = reader.nextDouble();
Student e = new Student(id, name, age, sex, result);
M.addStudent(e);
System.out.println("添加学生信息成功!");
break;
case 2:
System.out.println("输入您要查询的学号:");
String idd = reader.next();
M.findinfo(idd);
break;
case 3:
System.out.println("输入您要改动学生的学号:");
String iddd = reader.next();
System.out.println("输入您要改成的目的综合考评:");
double resultt = reader.nextDouble();
M.change(iddd, resultt);
break;
case 4:
System.out.println("输入您要删除学生的学号:");
String idddd = reader.next();
M.deleteStu(idddd);
break;
case 5:
M.sort();
System.out.println("排序成功!");
M.PrintInfo();
break;
case 6:
M.PrintInfo();
break;
case 7:
System.out.println("程序已经运行结束,下次见!");
System.exit(0);
break;
case 8:
System.out.println("数字在1~7之间!");
break;
}
}
}
}
//管理学生类
class Manage
{
ArrayList l=null;
public Manage()
{
l=new ArrayList();
}
//添加学生信息
public void addStudent(Student e)
{
l.add(e);
}
//根据信学号查看学生信息
public void findinfo(String id)
{
for(int i=0;i<l.size();i++)
{
Student temp=(Student) l.get(i);
if(id.equals(temp.getId()))
{
System.out.println("学号:"+temp.getId()+" 姓名:"+temp.getName()+" 年龄:"+temp.getAge()+" 性别:"+temp.getSex()+" 综合考评成绩:"+temp.getResult());
}
}
}
//修改学生综合考评成绩
public void change(String id,double resultt)
{
for(int i=0;i<l.size();i++)
{
Student temp=(Student) l.get(i);
if(id.equals(temp.getId()))
{
System.out.println("原有信息:");
System.out.println("学号:"+temp.getId()+" 姓名:"+temp.getName()+" 年龄:"+temp.getAge()+" 性别:"+temp.getSex()+" 综合考评成绩:"+temp.getResult());
}
}
for(int i=0;i<l.size();i++)
{
Student temp=(Student) l.get(i);
if(id.equals(temp.getId()))
{
System.out.println("最终信息:");
temp.setResult(resultt);
System.out.println("学号:"+temp.getId()+" 姓名:"+temp.getName()+" 年龄:"+temp.getAge()+" 性别:"+temp.getSex()+" 综合考评成绩:"+temp.getResult());
}
}
}
//删除学生信息
public void deleteStu(String id)
{
for(int i=0;i<l.size();i++)
{
Student temp=(Student) l.get(i);
if(id.equals(temp.getId()))
{
l.remove(i);
}
}
System.out.println("删除信息成功!");
}
//根据综合考评排名
public void sort()
{
String tempid;
String tempname;
int tempage;
char tempsex;
double tempresult;
for(int i=0;i<l.size()-1;i++)
{
Student x=(Student) l.get(i);
for(int j=i+1;j<l.size();j++)
{
Student y=(Student) l.get(j);
{
if(x.getResult()<y.getResult())
{
tempid=x.getId();
x.setId(y.getId());
y.setId(tempid);
tempname=x.getName();
x.setName(y.getName());
y.setName(tempname);
tempage=x.getAge();
x.setAge(y.getAge());
y.setAge(tempage);
tempsex=x.getSex();
x.setSex(y.getSex());
y.setSex(tempsex);
tempresult=x.getResult();
x.setResult(y.getResult());
y.setResult(tempresult);
}
}
}
}
}
//打印所有学生的信息
public void PrintInfo()
{
for(int i=0;i<l.size();i++)
{
Student temp=(Student) l.get(i);
System.out.println("学号:"+temp.getId()+" 姓名:"+temp.getName()+" 年龄:"+temp.getAge()+" 性别:"+temp.getSex()+" 综合考评成绩:"+temp.getResult());
}
}
}
//学生类
class Student
{
//成员变量
private String id;
private String name;
private int age;
private char sex;
private double result;
//构造方法
public Student(String id, String name, int age, char sex, double result) {
super();
this.id = id;
this.name = name;
this.age = age;
this.sex = sex;
this.result = result;
}
//所有的setter和getter方法
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public char getSex() {
return sex;
}
public void setSex(char sex) {
this.sex = sex;
}
public double getResult() {
return result;
}
public void setResult(double result) {
this.result = result;
}
}
运行结果:
来源:https://blog.csdn.net/qq_53786696/article/details/117324872
0
投稿
猜你喜欢
- 本文详细分析了C#类的访问修饰符用法,分享给大家供大家参考。具体用法分析如下:默认情况下,类声明为内部的,即只有当前工程中的代码才能访问它。
- 环绕通知:它是spring框架为我们提供的一种可以在代码中手动控制增强部分什么时候执行的方式。问题:当我们配置了环绕通知之后,增强的代码执行
- 代码如下: 实现1: BasicEditor.java package swt_jface.demo5; import java.io.Bu
- 项目结构:效果图一:效果图二:效果图三:关于闹钟:Alarm hongten v1.0 使用说明: &nbs
- 先对问题进行描述:(1)在MyEclipse Servers视图在MyEclipse 10.7.0在某些情况下,可能无法打开。 试图打开视图
- MultiFrameImageStreamCompleterMultiFrameImageStreamCompleter 是一个可组合的 I
- java的String对象底层是有字符数组存储的,理论上char[] 最大长度是int的最大值,实际思路:首先,String字面
- HashMap的get()方法的NullPointerException今天写代码发现一个 bug,HashMap的 get() 方法一直报
- Java源码系列三-工具类Arrays今天分享java的源码的第三弹,Arrays这个工具类的源码。因为近期在复习数据结构,了解到Array
- 概述冒泡排序是一种简单的排序算法。它重复地走访要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行
- Spring Framework 提供了一套可以方便地对 Controller 层中接收的参数进行校验的框架,其中就包括了 @Validat
- 像ipconfig /all 这样的CMD命令想必大家都知道,但是很多童鞋可能不知道怎么写这样的控制台带参数的程序,其实很简单,我们先看建立
- 功能描述上传照片文件名及是系统要识别标签或是照片的名称(人物标识)提取照片脸部特征值(调用 facemesh模型)保存特征值添加样本(调用
- 项目介绍医院管理系统,分为管理员、医生、病人三种角色;管理员主要功能包括:首页、系统管理:医生管理、患者管理、药品管理;预约管理;病史管理;
- 本文实例为大家分享了java客户端登陆服务器用户名验证的具体实现代码,供大家参考,具体内容如下客户端通过键盘录入用户名,服务端对用户名进行验
- 在LINUX上部署带有JAR包的JAVA项目首先eclipse上要装上一个小插件,叫做Fat Jar点击Fat Jar红框里选上主类点击Ne
- 1、需要引入依赖<dependency> &l
- 我就废话不多说了,大家还是直接看代码吧~<select id="getBiTree" parameterType=
- 什么事读写分离读写分离,基本的原理是让主数据库处理事务性增、改、删操作(INSERT、UPDATE、DELETE),而从数据库处理SELEC
- 定义可理解为 适配广泛的类型,即参数化类型,可以把类型像方法的参数那样进行传递。// 以ArrayList为示例// 泛型T可以是任意类pu