创建学生类
public class Student extends Person{
int Sid;
String courseName;
Student(int Sid,String courseName,int age, String name, String sex) {
super(age, name, sex);
this.courseName = courseName;
this.Sid = Sid;
}
void Sayhello(){
System.out.println("我叫"+this.name+"性别:"+this.sex+"年龄:"+this.age+"我学的是"+this.courseName);
}
}
创建学生管理类
import java.util.ArrayList;
import java.util.Scanner;
import java.util.concurrent.TimeUnit;
public class StudentManager {
public static void main(String[] args) {
ArrayList<Student> stu = new ArrayList<>();
start(stu);
}
static void start(ArrayList<Student> stu){
try {
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("请输入数字选择业务>>>");
Scanner scanner = new Scanner(System.in);
int num = scanner.nextInt();
switch (num) {
case 1 : System.out.println("查询的学生信息");getStudent(stu);break;
case 2 : System.out.println("添加学生的信息");addStudent(stu);break;
case 3 : System.out.println("修改学生的信息");updateStudent(stu);break;
case 4 : System.out.println("删除学生的信息");deleteStudent(stu);break;
case 5 : {
System.out.println("退出系统");
System.exit(0);
break;
}
default: {
System.out.println("输入错误,请等待三秒后重新输入");
try {
TimeUnit.SECONDS.sleep(3);
} catch (InterruptedException e) {
e.printStackTrace();
}
break;
}
}
}
}catch (Exception e){
// System.out.println(e);
start(stu);
}
}
static void addStudent (ArrayList<Student> stu){
Scanner scanner = new Scanner(System.in);
try {
System.out.println("添加学生的姓名: ");
String name = scanner.next();
System.out.println("添加学生的年龄: ");
int age = scanner.nextInt();
System.out.println("添加学生的学科: ");
String course = scanner.next();
System.out.println("添加学生的sid: ");
int sid = scanner.nextInt();
System.out.println("添加学生的性别: ");
String gender = scanner.next();
System.out.printf("%d,%s, %d ,%s, %s\n",sid,name,age,gender,course);
for (int i = 0; i < stu.size(); i++) {
System.out.println(stu.get(i).Sid);
System.out.println("stu = " + stu.size());
if(stu.get(i).Sid ==sid){
System.out.println("学生已存在,请重新输入");addStudent(stu);
return;
}
}
stu.add(new Student(sid,course,age,name,gender)) ;
System.out.println("学生添加成功");
} catch(Exception e) {
try {
System.out.println("输入错误,请等待三秒后重新输入");
TimeUnit.SECONDS.sleep(3);
} catch (InterruptedException ex) {
ex.printStackTrace();
}finally{
addStudent(stu);
}
}
}
static void updateStudent(ArrayList<Student> stu) {
try{
System.out.println(stu.size());
Scanner scanner = new Scanner(System.in);
System.out.println("修改学生的姓名: ");
String name = scanner.next();
System.out.println("修改学生的年龄: ");
int age = scanner.nextInt();
System.out.println("修改学生的学科: ");
String course = scanner.next();
System.out.println("修改学生的sid: ");
int sid = scanner.nextInt();
System.out.println("修改学生的性别: ");
String gender = scanner.next();
Student stu1 = new Student(sid,course,age,name,gender);
for (int i = 0; i <= stu.size(); i++) {
System.out.println("stu = " + stu.size());
if(i==stu.size()){
System.out.println("学生不存在,请重新输入");return;
}
else if(stu.get(i).Sid ==sid){
stu.set(i,stu1); ;
System.out.println("学生修改成功");break;
}
}
}catch (Exception e){
System.out.println("输入错误,请重新输入");
updateStudent(stu);
}
}
static void getStudent(ArrayList<Student> stu){
if(stu.size() == 0){
System.out.println("没有学生信息");
return;
}
for (Student s : stu) {
System.out.println(s.Sid + "---" + s.name + "---" + s.age + "---" + s.sex + "---" + s.courseName);
}
}
static void deleteStudent(ArrayList<Student> stu){
try{
Scanner scanner = new Scanner(System.in);
System.out.println("删除学生的sid: ");
int sid = scanner.nextInt();
for (int i = 0; i < stu.size(); i++) {
if(stu.get(i).Sid ==sid){
stu.remove(i);
System.out.println("删除成功");
return;
}
}
System.out.println("学生不存在");
}catch(Exception e){
deleteStudent(stu);
}
}
}