package studentSystem;
import java.util.*;
/**
* 建立一个学生信息管理系统, 可以完成在控制台内增,删,改,查,遍历所有学生数据 以及退出的功能
*
* @author Acer
*
*/
public class Student {
static ArrayList<String> stuname = new ArrayList<>();//新建一个String类型的数组stuname用来存放学生的姓名
static ArrayList<String> stugender = new ArrayList<>();//新建一个String类型的数组stugender用来存放学生的性别
static ArrayList<Long> stuid = new ArrayList<>();//新建一个Long类型的数组stuid用来存放学生的性别
static ArrayList<String> stuage = new ArrayList<>();//新建一个String类型的数组stuage用来存放学生的性别
public static void main(String[] args) {
while (true) {
System.out.println("欢迎使用学生管理系统");
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("请输入1-6");
// Scanner stu = new Scanner(System.in);//新建一个Scanner对象stu
// String sr = stu.nextLine();//新建一个String类型的变量sr用来接受输入的数据
String sr = new Scanner(System.in).nextLine();//使用匿名内部类来完成获得输入的数据
Student test = new Student();//创建一个Student对象,用来调用方法
if (sr.equals("1")) {//判断输入的序号,并根据1-6选择相应的方法,如果超出范围,返回输入错误
System.out.println("增加学生");
test.addstu();
} else if (sr.equals("2")) {
System.out.println("删除学生");
test.removestu();
} else if (sr.equals("3")) {
System.out.println("修改学生");
test.changestu();
} else if (sr.equals("4")) {
System.out.println("查询学生");
test.lookstu();
} else if (sr.equals("5")) {
System.out.println("查询所有学生");
test.lookall();
} else if (sr.equals("6")) {
System.exit(-1);
} else {
System.out.println("输入错误");
}
}
}
// 增
public void addstu() {
System.out.println("请输入学生姓名");
// Scanner stun = new Scanner(System.in);//新建一个Scanner对象stun
// String stn = stun.nextLine();//用一个String类型的stn接收输入的数据
// stuname.add(stn);//向集合中添加输入的姓名
// System.out.println(stuname);
String stn1 = new Scanner(System.in).nextLine();//使用匿名内部类来完成获得输入的数据
stuname.add(stn1);
System.out.println();
System.out.println("请输入学生性别");
// Scanner stug = new Scanner(System.in);//新建一个Scanner对象stug
// String stg = stug.nextLine();//用一个String类型的stg接收输入的数据
// stugender.add(stg);//向集合中添加输入的性别
// System.out.println(stugender);
String stg1 = new Scanner(System.in).nextLine();//使用匿名内部类来完成获得输入的数据
stugender.add(stg1);
System.out.println();
System.out.println("请输入学生学号");
// Scanner stui = new Scanner(System.in);//新建一个Scanner对象stui
// Long sti = stui.nextLong();//用一个long类型的sti接收输入的数据
// stuid.add(sti);//向集合中添加输入的学号
// System.out.println(stuid);
Long sti1 = new Scanner(System.in).nextLong();//使用匿名内部类来完成获得输入的数据
stuid.add(sti1);
System.out.println();
System.out.println("请输入学生年龄");
// Scanner stua = new Scanner(System.in);//新建一个Scanner对象stua
// String sta = stua.nextLine();//用一个String类型的sta接收输入的数据
// stuage.add(sta);//向集合中添加输入的年龄
// System.out.println(stuage);
String sta1 = new Scanner(System.in).nextLine();//使用匿名内部类来完成获得输入的数据
stuage.add(sta1);
System.out.println();
}
// 删
public void removestu() {
System.out.println("请输入你想删除的学生学号");
System.out.println(stuid);
// Scanner num2 = new Scanner(System.in);//新建一个Scanner对象num,
// long num2b = num2.nextInt();//用一个long类型的numb接收输入的数据
Long num2 = new Scanner(System.in).nextLong();//使用匿名内部类来完成获得输入的数据
int nu2 = stuid.indexOf(num2);//新创建一个int类型的nu来接受numb在stuid数组中的下标
if (stuid.contains(num2)) {//判断集合中是否有输入的学号,如果有,执行方法体
stuname.remove(nu2);//在姓名集合中删除第nu号元素
stugender.remove(nu2);//在性别集合中删除第nu号元素
stuid.remove(nu2);//在学号集合中删除第nu号元素
stuage.remove(nu2);//在年龄集合中删除第nu号元素
System.out.println();
}
else { //如果没有,输出"输入错误,请重新输入"并返回
System.out.println("输入错误,请重新输入");
System.out.println();
}
}
// 改
public void changestu() {
System.out.println(stuid);
System.out.println("请输入要修改的学生学号");
// Scanner num3 = new Scanner(System.in);
// Long num3b = num3.nextLong();
Long num3 = new Scanner(System.in).nextLong();//使用匿名内部类来完成获得输入的数据
int nu3 = stuid.indexOf(num3);
if (stuid.contains(num3)) {//判断集合中是否有输入的学号,如果有,执行方法体
stuname.remove(nu3);//在姓名集合中删除第nu号元素
stugender.remove(nu3);//在性别集合中删除第nu号元素
stuid.remove(nu3);//在学号集合中删除第nu号元素
stuage.remove(nu3);//在年龄集合中删除第nu号元素
System.out.println("请输入修改后的姓名");
String stun = new Scanner(System.in).nextLine();//使用匿名内部类来完成获得输入的数据
stuname.add(nu3,stun);
System.out.println("请输入修改后的性别");
String stug = new Scanner(System.in).nextLine();//使用匿名内部类来完成获得输入的数据
stugender.add(nu3,stug);
System.out.println("请输入修改后的学号");
Long stui = new Scanner(System.in).nextLong();//使用匿名内部类来完成获得输入的数据
stuid.add(nu3,stui);
System.out.println("请输入修改后的年龄");
String stua = new Scanner(System.in).nextLine();//使用匿名内部类来完成获得输入的数据
stuage.add(nu3,stua);
}
else {
System.out.println("输入学号有误,请重新输入");
System.out.println();
}
}
// 查
public void lookstu() {
System.out.println("请输入要查询的学生学号");
Long num4 = new Scanner(System.in).nextLong();
int nu4 = stuid.indexOf(num4);
System.out.print("姓名:"+stuname.get(nu4)+"\t");
System.out.print("性别:"+stugender.get(nu4)+"\t");
System.out.print("学号:"+stuid.get(nu4)+"\t");
System.out.print("年龄:"+stuage.get(nu4)+"\t");
System.out.println();
}
// 查询所有
public void lookall() {
for(int i=0;i<stuid.size();i++) {
System.out.print("姓名:"+stuname.get(i)+"\t");
System.out.print("性别:"+stugender.get(i)+"\t");
System.out.print("学号:"+stuid.get(i)+"\t");
System.out.print("年龄:"+stuage.get(i)+"\t");
System.out.println();
}
}
}
运行的主界面如下
欢迎使用学生管理系统
1.增加一个学生信息
2.删除一个学生信息
3.修改一个学生信息
4.查询一个学生信息
5.查询所有学生信息
6.退出系统
请输入1-6
跟据要求输入数字即可初步实现相关内容.