简易版学生管理系统。能够在控制台向集合中添加,删除,修改,查看学生信息;根据学生学号判断集合中是否存在学生信息,并给出提示; 先提前创建一个学生类,包含学号,姓名,年龄,生日属性,再在测试类中实现;
学生类:
public class Student {
private String sid
;
private String name
;
private int age
;
private String birthday
;
public Student() {
}
public Student(String sid
, String name
, int age
, String birthday
) {
this.sid
= sid
;
this.name
= name
;
this.age
= age
;
this.birthday
= birthday
;
}
public String
getSid() {
return sid
;
}
public void setSid(String sid
) {
this.sid
= sid
;
}
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 String
getBirthday() {
return birthday
;
}
public void setBirthday(String birthday
) {
this.birthday
= birthday
;
}
}
测试类:
public static void main(String
[] args
) {
ArrayList
<Student> list
= new ArrayList<>();
Scanner sc
= new Scanner(System
.in
);
lo
:
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("请输入您的选择:");
String choice
= sc
.next();
switch (choice
) {
case "1":
addStudent(list
);
break;
case "2":
deleteStudent(list
);
break;
case "3":
updateStudent(list
);
break;
case "4":
queryStudent(list
);
break;
case "5":
System
.out
.println("感谢您的使用");
break lo
;
default:
System
.out
.println("您的输入有误");
break;
}
}
}
public static void updateStudent(ArrayList
<Student> list
) {
System
.out
.println("请输入您要修改的学生学号");
Scanner sc
= new Scanner(System
.in
);
String updateSid
= sc
.next();
int index
= getIndex(list
, updateSid
);
if (index
== -1) {
System
.out
.println("查无信息,请重新输入");
} else {
System
.out
.println("请输入新的姓名");
String name
= sc
.next();
System
.out
.println("请输入新的年龄");
int age
= sc
.nextInt();
System
.out
.println("请输入新的生日");
String birthday
= sc
.next();
Student stu
= list
.get(index
);
stu
.setName(name
);
stu
.setAge(age
);
stu
.setBirthday(birthday
);
System
.out
.println("修改成功");
}
}
public static void deleteStudent(ArrayList
<Student> list
) {
System
.out
.println("请输入您要删除的学生学号");
Scanner sc
= new Scanner(System
.in
);
String deleteSid
= sc
.next();
int index
= getIndex(list
, deleteSid
);
if (index
== -1) {
System
.out
.println("查无信息,请重新输入");
} else {
list
.remove(index
);
System
.out
.println("删除成功!");
}
}
public static void queryStudent(ArrayList
<Student> list
) {
int size
= list
.size();
if (size
== 0) {
System
.out
.println("无信息,请添加后重新查询");
return;
}
System
.out
.println("学号\t姓名\t年龄\t生日");
for (int i
= 0; i
< list
.size(); i
++) {
Student stu
= list
.get(i
);
System
.out
.println(stu
.getSid() + "\t" + stu
.getName() + "\t" + stu
.getAge() + "\t" + stu
.getBirthday());
}
}
public static void addStudent(ArrayList
<Student> list
) {
Scanner sc
= new Scanner(System
.in
);
String sid
;
while (true) {
System
.out
.println("请输入学号:");
sid
= sc
.next();
int index
= getIndex(list
, sid
);
if (index
== -1) {
break;
}
}
System
.out
.println("请输入姓名:");
String name
= sc
.next();
System
.out
.println("请输入年龄:");
int age
= sc
.nextInt();
System
.out
.println("请输入生日:");
String birthday
= sc
.next();
Student stu
= new Student(sid
, name
, age
, birthday
);
list
.add(stu
);
System
.out
.println("添加成功");
}
public static int getIndex(ArrayList
<Student> list
, String sid
) {
int index
= -1;
for (int i
= 0; i
< list
.size(); i
++) {
Student stu
= list
.get(i
);
String id
= stu
.getSid();
if (id
.equals(sid
)) {
index
= i
;
}
}
return index
;
}
运行结果:
转载请注明原文地址:https://blackberry.8miu.com/read-6089.html