Java学生学生管理系统(初学简单)
本人初学Java,制作完成后,有一些操作的小问题,解决如下 内联代码片
。
1、学号重复解决
if (arr.get(i).getNum().equals(num)) {
System.out.println("此学号已被占用,请重新输入");
add(arr);
return;
2、修改删除时还未有学生录入
if (arr.size() == 0) {
System.out.println("还未有学生录入,无法进行修改");
} else {
System.out.println("请输入学生学号:");
if (arr.size() == 0) {
System.out.println("还未有学生信息录入,无法进行删除");
} else {
System.out.println("请输入学生学号:");
3、修改删除时该学生不存在
if (i == arr.size() - 1) {
System.out.println("您输入的学号不存在,请重新输入");
rev(arr);
}
if (i == arr.size() - 1) {
System.out.println("您输入的学号不存在,请从新输入");
del(arr);
}
定义学生类
public class student {
private String num;
private String name;
private String age;
private String address;
public void show() {
System.out.println(this.num + " " + this.name +
" " + this.age + " " + this.address);
}
public student() {
}
public student(String num, String name, String age, String address) {
this.num = num;
this.name = name;
this.age = age;
this.address = address;
}
public String getNum() {
return num;
}
public void setNum(String num) {
this.num = num;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
}
菜单方法
//菜单方法
public static void menu() {
ArrayList<student> arr = new ArrayList<student>();
while (true) {
Scanner sc = new Scanner(System.in);
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("请选择:");
switch (sc.nextInt()) {
case 1:
add(arr);
break;
case 2:
rev(arr);
break;
case 3:
del(arr);
break;
case 4:
show(arr);
break;
case 5:
System.exit(0);//结束整个程序
return;
default:
System.out.println("输入错误!");
}
}
}
添加方法
//添加方法
public static void add(ArrayList<student> arr) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入学生学号:");
String num = sc.nextLine();
for (int i = 0; i < arr.size(); i++) {
if (arr.get(i).getNum().equals(num)) {
System.out.println("此学号已被占用,请重新输入");
add(arr);
return;
}
}
System.out.println("请输入学生姓名:");
String name = sc.nextLine();
System.out.println("请输入学生年龄:");
String age = sc.nextLine();
System.out.println("请输入学生住址:");
String address = sc.nextLine();
arr.add(new student(num, name, age, address));
System.out.println("输入保存成功!");
}
修改方法
//修改方法
public static void rev(ArrayList<student> arr) {
Scanner sc = new Scanner(System.in);
if (arr.size() == 0) {
System.out.println("还未有学生录入,无法进行修改");
} else {
System.out.println("请输入学生学号:");
String number = sc.nextLine();
for (int i = 0; i < arr.size(); i++) {
if (arr.get(i).getNum().equals(number)) {
System.out.println("请输入新的姓名:");
arr.get(i).setName(sc.nextLine());
System.out.println("请输入新的年龄:");
arr.get(i).setAge(sc.nextLine());
System.out.println("请输入新的住址:");
arr.get(i).setAddress(sc.nextLine());
System.out.println("修改成功!");
return;
}
if (i == arr.size() - 1) {
System.out.println("您输入的学号不存在,请重新输入");
rev(arr);
}
}
}
}
删除方法
//删除方法
public static void del(ArrayList<student> arr) {
Scanner sc = new Scanner(System.in);
if (arr.size() == 0) {
System.out.println("还未有学生信息录入,无法进行删除");
} else {
System.out.println("请输入学生学号:");
String number = sc.nextLine();
for (int i = 0; i < arr.size(); i++) {
if (arr.get(i).getNum().equals(number)) {
if (arr.remove(arr.get(i))) {
System.out.println("删除成功!");
return;
}
}
if (i == arr.size() - 1) {
System.out.println("您输入的学号不存在,请从新输入");
del(arr);
}
}
}
}
显示方法
//展示方法
public static void show(ArrayList<student> arr) {
if (arr.size() == 0) {
System.out.println("无学生信息,请添加后再查询");
} else {
System.out.println("学号- 姓名- 年龄- 地址");
for (int i = 0; i < arr.size(); i++) {
arr.get(i).show();
}
}
}
完整代码
package package2.studentManager;
/*project :学生管理系统(调试)
date :2021.02.25
maker :jsl*/
import java.util.ArrayList;
import java.util.Scanner;
public class studentRun {
public static void main(String[] args) {
menu();
}
//添加方法
public static void add(ArrayList<student> arr) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入学生学号:");
String num = sc.nextLine();
for (int i = 0; i < arr.size(); i++) {
if (arr.get(i).getNum().equals(num)) {
System.out.println("此学号已被占用,请重新输入");
add(arr);
return;
}
}
System.out.println("请输入学生姓名:");
String name = sc.nextLine();
System.out.println("请输入学生年龄:");
String age = sc.nextLine();
System.out.println("请输入学生住址:");
String address = sc.nextLine();
arr.add(new student(num, name, age, address));
System.out.println("输入保存成功!");
}
//修改方法
public static void rev(ArrayList<student> arr) {
Scanner sc = new Scanner(System.in);
if (arr.size() == 0) {
System.out.println("还未有学生录入,无法进行修改");
} else {
System.out.println("请输入学生学号:");
String number = sc.nextLine();
for (int i = 0; i < arr.size(); i++) {
if (arr.get(i).getNum().equals(number)) {
System.out.println("请输入新的姓名:");
arr.get(i).setName(sc.nextLine());
System.out.println("请输入新的年龄:");
arr.get(i).setAge(sc.nextLine());
System.out.println("请输入新的住址:");
arr.get(i).setAddress(sc.nextLine());
System.out.println("修改成功!");
return;
}
if (i == arr.size() - 1) {
System.out.println("您输入的学号不存在,请重新输入");
rev(arr);
}
}
}
}
//删除方法
public static void del(ArrayList<student> arr) {
Scanner sc = new Scanner(System.in);
if (arr.size() == 0) {
System.out.println("还未有学生信息录入,无法进行删除");
} else {
System.out.println("请输入学生学号:");
String number = sc.nextLine();
for (int i = 0; i < arr.size(); i++) {
if (arr.get(i).getNum().equals(number)) {
if (arr.remove(arr.get(i))) {
System.out.println("删除成功!");
return;
}
}
if (i == arr.size() - 1) {
System.out.println("您输入的学号不存在,请从新输入");
del(arr);
}
}
}
}
//展示方法
public static void show(ArrayList<student> arr) {
if (arr.size() == 0) {
System.out.println("无学生信息,请添加后再查询");
} else {
System.out.println("学号- 姓名- 年龄- 地址");
for (int i = 0; i < arr.size(); i++) {
arr.get(i).show();
}
}
}
//菜单方法
public static void menu() {
ArrayList<student> arr = new ArrayList<student>();
while (true) {
Scanner sc = new Scanner(System.in);
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("请选择:");
switch (sc.nextInt()) {
case 1:
add(arr);
break;
case 2:
rev(arr);
break;
case 3:
del(arr);
break;
case 4:
show(arr);
break;
case 5:
System.exit(0);//结束整个程序
return;
default:
System.out.println("输入错误!");
}
}
}
}
初学,望指正