Java Vector实现班级信息管理系统
作者:大菜彩 发布时间:2023-11-25 03:09:09
标签:java,班级,管理系统
Vector实现班级信息管理系统,供大家参考,具体内容如下
代码如下:
import java.util.*;
public class Demo3 {
public static void main(String[] args)
{
Manage2 M = new Manage2();
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 Manage2
{
Vector l=null;
public Manage2()
{
l=new Vector();
}
//添加学生信息
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());
}
}
}
运行示例:
来源:https://blog.csdn.net/qq_53786696/article/details/117325026


猜你喜欢
- 本文为大家分享了 Android Retrofit 2.0框架上传图片解决方案,具体内容如下1.单张图片的上传/** * 上传一
- Object类型是所有类型的基类,其下面有ValueType类型。什么结构啊,枚举啊,都继承ValueType,这些都是值类型。其他的什么类
- 前言在微服务的多样化世界中,HTTP是代理到代理通信中无可争议的领导者。它成熟,无处不在。但在某些情况下,HTTP请求-响应可能很麻烦。如果
- 一、线程间的共享1.1 ynchronized内置锁用处Java支持多个线程同时访问一个对象或者对象的成员变量关键字synchronized
- synchronized锁的升级(偏向锁、轻量级锁及重量级锁)java同步锁前置知识点1.编码中如果使用锁可以使用synchronized关
- 本文实例讲述了Java线程组与未处理异常。分享给大家供大家参考,具体如下:一 点睛从JDK1.5开始,Java加强了线程的异常处理,如果线程
- @RequestBody与post请求的关系@RequestBody主要用来接收前端传递给后端的json字符串中的数据的(请求体中的数据的)
- 本文实例为大家分享了UnityShader使用Plane实现翻书效果的具体代码,供大家参考,具体内容如下之前在网上看到一个Shadr可以实现
- 继承是面向对象程序设计中最重要的概念之一。继承允许我们根据一个类来定义另一个类,这使得创建和维护应用程序变得更容易。同时也有利于重用代码和节
- 本文实例为大家分享了Android seekbar实现可拖动进度条的具体代码,供大家参考,具体内容如下SeekBar通过滑块的位置来标识数值
- 目前在做项目中有处理图片的部分,参考了一下网上案例,自己写了一个获取内容中的图片地址的方法。 一般来说一个 HTML 文档有很多标
- 单纯使用GridView通用的两种给GridView 添加分割线的方法;http://stackoverflow.com/questions
- 自定义加载yml,附源码解读昨天在对公司的微服务配置文件标准化的过程中,发现将原来的properties文件转为yml文件之后,微服务mod
- MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。MongoD
- 一、题目描述题目实现:一个服务器与多个客户端通信。通过一个服务器与多个客户端进行通信,运行程序,服务器启动后,启动两个客户端程序,然后通过服
- 文件上传大小设置#文件大小 MB必须大写# maxFileSize 是单个文件大小# maxRequestSize是
- 一、在学习枚举之前,首先来听听枚举的优点。1、枚举能够使代码更加清晰,它允许使用描述性的名称表示整数值。2、枚举使代码更易于维护,有助于确保
- 目录前言继承Thread实现Runnale接口Callable线程池常见的4种线程池。总结前言在java中,如果每个请求到达就创建一个新线程
- 在网上拷贝的所有阿里云镜像比如:<mirror> <id>nexus-aliyun</id>
- 获取Spring上下文环境ApplicationContextWeb项目中发现有人如此获得Spring的上下环境:public class