핵심 기술: 루프, 조건 전환, 객체 생성, ArrayList() 동적 배열 또는 컬렉션, 비공개
시스템 기능:
1 Traverse를 공부할 학생(학생 번호, 이름, 나이, 거주지)을 추가합니다. 2. 학생수정 시에도 수정하고자 하는 학번을 입력하고, 이름, 나이, 학번을 다시 입력합니다. 학번을 순차적으로 입력한 경우, 잘못된 경우 재입력하라는 메시지가 표시됩니다.
3. 학번이 존재하지 않는 경우 학생 삭제 여부를 판단합니다. 해당 학번이 존재하면 변경된 학번에 포함된 모든 정보가 삭제됩니다. 4. 모든 학생 정보를 보려면 Loop traversal
5을 사용하세요. 선택하지 않으면 프로그램이 종료됩니다. 메인 페이지로 돌아가기
package student_status_management_system;
public class Student {
private String student_number;
private String name;
private String age;
private String address;
public Student() {
}
public Student(String student_number, String name, String age, String address) {
this.student_number = student_number;
this.name = name;
this.age = age;
this.address = address;
}
public String getStudent_number() {
return student_number;
}
public void setStudent_number(String student_number) {
this.student_number = student_number;
}
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 boolean repetition(ArrayList<Student>array,String studentnumber){
boolean flag = false;
for (int i = 0;i<array.size();i++){
Student s = array.get(i);
if (s.getStudent_number().equals(studentnumber)){
flag = true;
break;
}
}
return flag;
}
public static void addStudent(ArrayList<Student> array) {
String studentnumber;
Scanner sc = new Scanner(System.in);
while (true) {
System.out.println("请输入学生学号:");
studentnumber = sc.nextLine();
boolean flag = repetition(array, studentnumber);
if (flag) {
System.out.println("该学号已存在!请重新输入!");
}
else {
break;
}
}
System.out.println("请输入学生姓名:");
String name = sc.nextLine();
System.out.println("请输入学生年龄:");
String age = sc.nextLine();
System.out.println("请输入学生居住地:");
String address = sc.nextLine();
//创建学生对象,把键盘录入的学生信息赋值给学生对象的成员变量
Student s = new Student();
s.setStudent_number(studentnumber);
s.setName(name);
s.setAge(age);
s.setAddress(address);
//将信息添加到集合
array.add(s);
System.out.println("添加成功!");
}
public static void updateStudent(ArrayList<Student> array) {
int index = -1;
Scanner sc = new Scanner(System.in);
System.out.println("请输入你要修改的学生的学号:");
String id = sc.nextLine();
for (int i = 0; i < array.size(); i++) {
Student student = array.get(i);
if (student.getStudent_number().equals(id)) {
index = i;
break;
}
}
if (index == -1) {
System.out.println("该学号不存在!");
} else {
System.out.println("请输入新的学生姓名:");
String name = sc.nextLine();
System.out.println("请输入新的学生年龄:");
String age = sc.nextLine();
System.out.println("请输入新的学生居住地:");
String address = sc.nextLine();
Student s = new Student();
s.setStudent_number(id);
s.setName(name);
s.setAge(age);
s.setAddress(address);
array.set(index, s);
System.out.println("修改成功!");
}
}
public static void deleteStudent(ArrayList<Student> array) {
int index = -1; //定义索引
Scanner sc = new Scanner(System.in);
System.out.println("请输入你要删除的学生的学号:");
String id = sc.nextLine();
for (int i = 0; i < array.size(); i++) {
Student s = array.get(i);
if (s.getStudent_number().equals(id)) {
index = i;
break;
}
}
if (index == -1) {
System.out.println("该学号不存在!");
} else {
array.remove(index);
System.out.println("删除成功!");
}
}
public static void findAllStudent(ArrayList<Student> array) {
//显示表头
if (array.size() == 0) {
System.out.println("你还没有输入信息!");
return;//阻止程序往下执行
}
System.out.println("学号\t\t\t\t姓名\t\t年龄\t\t\t居住地");
for (int i = 0; i < array.size(); i++) {
Student s = array.get(i);
System.out.println(s.getStudent_number() + "\t\t" + s.getName() + "\t\t" + s.getAge() + "岁" + "\t\t" + s.getAddress());
}
}
public static void main(String[] args) {
//创建集合,储存学生信息
ArrayList<Student> array = new ArrayList<>();
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 退出系统");
//主界面
Scanner sc = new Scanner(System.in);
System.out.println("请输入你要进行的操作(数字序号):");
String line = sc.nextLine();
switch (line) {
case "1":
addStudent(array);
break;
case "2":
updateStudent(array);
break;
case "3":
deleteStudent(array);
break;
case "4":
findAllStudent(array);
break;
case "5":
System.out.println("再见!");
System.exit(0);//JVM退出
}
}
}
학생 추가
학생 수정
학생 삭제
프로그램 종료
학생 정보를 추가하지 않고 학생 보기
위 내용은 Java Writing Console 학생 현황 관리 시스템 구현에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!