import java.util.*;
class Student{
String StuNum;
String Gender;
String Name;
String Age;
String Score;
}
class StuInfor{
public static void main(String args[]){
System.out.println("******欢迎使用学生信息管理系统******");
Scanner scan = new Scanner(System.in);
StuData sd = new StuData();
while(true){
System.out.println( );
System.out.println("*****************");
System.out.println(" 请 选 择 操 作:");
System.out.println("1:添 加 学 生 信 息");
System.out.println("2:删 除 学 生 信 息");
System.out.println("3:查 询 学 生 信 息");
System.out.println("4:修 改 学 生 信 息");
System.out.println("0:退 出 系 统");
System.out.println("*****************");
System.out.println( );
System.out.print("您的选择是:");
byte opIndex = scan.nextByte();
switch(opIndex){
case 0:
System.out.println();
System.out.println("已 退 出 系 统 !");
System.exit(0);
case 1:
System.out.println();
sd.insertStu();
break;
case 2:
System.out.println();
sd.DeleteStu();
System.out.println("*****************");
System.out.println("已 删 除 学 生 信 息 !");
System.out.println("*****************");
break;
case 3:
System.out.println();
System.out.println("学 生 信 息");
System.out.println();
sd.StuArray();
break;
case 4:
System.out.println();
System.out.println("请 修 改 学 生 信 息 !");
System.out.println();
sd.ChangeStu();
break;
default:
System.out.println();
System.out.println("输入无效 !");
}
}
}
}
class StuData{
Student stu = new Student();
void insertStu(){
Scanner scan2 = new Scanner(System.in);
System.out.println("输 入 学 生 姓 名");
stu.Name = scan2.nextLine();
System.out.println("输 入 学 生 性 别");
stu.Gender = scan2.nextLine();
System.out.println("输 入 学 生 年 龄");
stu.Age = scan2.nextLine();
System.out.println("输 入 学 生 学 号");
stu.StuNum = scan2.nextLine();
System.out.println("输 入 学 生 成 绩");
stu.Score = scan2.nextLine();
System.out.println("添 加 成 功 !");
}
void StuArray(){
System.out.println("姓名:"+stu.Name);
System.out.println("性别:"+stu.Gender);
System.out.println("年龄:"+stu.Age);
System.out.println("学号:"+stu.StuNum);
System.out.println("成绩:"+stu.Score);
}
void DeleteStu(){
stu.Name = null;
stu.Gender = null;
stu.Age = null;
stu.StuNum = null;
stu.Score = null;
}
void ChangeStu(){
Scanner scan2 = new Scanner(System.in);
System.out.println("输 入 学 生 姓 名");
stu.Name = scan2.nextLine();
System.out.println("输 入 学 生 性 别");
stu.Gender = scan2.nextLine();
System.out.println("输 入 学 生 年 龄");
stu.Age = scan2.nextLine();
System.out.println("输 入 学 生 学 号");
stu.StuNum = scan2.nextLine();
System.out.println("输 入 学 生 成 绩");
stu.Score = scan2.nextLine();
System.out.println("修 改 成 功 !");
}
}
新版本哈哈,功能更完善一点了!
共四个类StuSys, StuData, Student, Main
package com.zzu.java17;
import java.util.Scanner;
public class StuSys {
StuData sd = new StuData();
Scanner scan = new Scanner(System.in);
void showMenu() {
System.out.println("请输入操作代码:\n");
System.out.println("\t1:增加学生信息:\n");
System.out.println("\t2:删除学生信息:\n");
System.out.println("\t3:修改学生信息:\n");
System.out.println("\t4:根据学号查看学生信息:\n");
System.out.println("\t5:显示所有学生信息:\n");
System.out.println("\t0:退出系统:\n");
}
void addStu() {
System.out.println("请输入学生信息:学号、姓名、性别、年龄、成绩,各属性以空格分隔:\n");
String stuNum = scan.next();
String name = scan.next();
String gender = scan.next();
int age = scan.nextInt();
int score = scan.nextInt();
if(sd.checkStu(stuNum) == null) {
Student stu = new Student(stuNum, name, gender, age, score);
sd.addStu(stu);
System.out.println("添加成功!");
}else {
System.out.println("您输入的学号已存在!");
addStu();
}
}
void deleteStu() {
System.out.println("请输入需要删除学生的学号:\n");
String stuNum = scan.next();
if(sd.checkStu(stuNum) != null) {
sd.deleteStu(stuNum);
System.out.println("删除成功!");
}else {
System.out.println("您输入的学号不存在!");
deleteStu();
}
}
void updateStu() {
System.out.println("请输入需要更新学生的学号:\n");
String stuNum = scan.next();
Student stu = null;
if((stu = sd.checkStu(stuNum)) != null) {
System.out.println("请输入学生信息:姓名、性别、年龄、成绩(各个信息以空格分隔):\n");
String name = scan.next();
String gender = scan.next();
int age = scan.nextInt();
int score = scan.nextInt();
stu.name = name;
stu.gender = gender;
stu.age = age;
stu.score = score;
sd.updateStu(stu);
System.out.println("更新成功!");
}else {
System.out.println("您输入的学号不存在!");
updateStu();
}
}
void showStu() {
System.out.println("请输入需要查看学生的学号:\n");
String stuNum = scan.next();
Student stu = null;
if((stu = sd.checkStu(stuNum)) != null) {
sd.showStu(stuNum);
}else {
System.out.println("您输入的学号不存在!");
}
}
void showAll() {
sd.showAll();
}
}
package com.zzu.java17;
public class StuData {
Student stuArray[] = new Student[10];
int dataIndex = 0;
Student checkStu(String stuNum) {
for(int i=0; i<dataIndex; i++) {
if(stuArray[i].stuNum.equals(stuNum)) {
return stuArray[i];
}
}
return null;
}
void addStu(Student stu) {
if(dataIndex == stuArray.length) {
Student tempArray[] = new Student[stuArray.length + (stuArray.length >> 1)];
for(int i=0; i<dataIndex; i++) {
tempArray[i] = stuArray[i];
}
stuArray = tempArray;
}
stuArray[dataIndex] = stu;
dataIndex++;
System.out.println("添加成功!\n");
}
void deleteStu(String stuNum) {
boolean boo = false;
for(int i=0; i<dataIndex; i++) {
if(stuArray[i].stuNum.equals(stuNum) && i != dataIndex) {
boo = true;
}
if(stuArray[i].stuNum.equals(stuNum) && i == dataIndex) {
dataIndex--;
}
if(boo) {
stuArray[i] = stuArray[i+1];
}
}
if(boo) {
dataIndex--;
}
}
void updateStu(Student stu) {
for(int i=0; i<dataIndex; i++) {
if(stu.stuNum.equals(stuArray[i].stuNum)) {
stuArray[i] = stu;
}
}
}
void showStu(String stuNum) {
for(int i=0; i<dataIndex; i++) {
if(stuArray[i].stuNum.equals(stuNum)) {
System.out.println(stuArray[i].toString());
}
}
}
void showAll() {
for(int i=0; i<dataIndex; i++) {
System.out.println(stuArray[i].toString());
}
}
}
package com.zzu.java17;
public class Student {
Student(String stuNum, String name, String gender, int age, int score){
this.stuNum = stuNum;
this.name = name;
this.gender = gender;
this.age = age;
this.score = score;
}
String stuNum;
String name;
String gender;
int age;
int score;
}
package com.zzu.java17;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
System.out.println("---------Welcome to Kp's Student Management System!---------\n");
Scanner scan = new Scanner(System.in);
StuSys ss = new StuSys();
while(true) {
ss.showMenu();
switch(scan.nextInt()) {
case 0:
System.exit(0);
case 1:
ss.addStu();
break;
case 2:
ss.deleteStu();
break;
case 3:
ss.updateStu();
break;
case 4:
ss.showStu();
break;
case 5:
ss.showAll();
break;
default:
System.out.println("Error input,please input an integer from 0 to 5 !");
}
}
}
}