1、首先定义一个学生信息主体类
package project;
public class Stu_class {
String name;
String stu_id;
String sex;
String phone_num;
int age;
public Stu_class(String name,String stu_id, int age, String phone_num, String sex) {
this.name = name;
this.stu_id = stu_id;
this.phone_num = phone_num;
this.sex = sex;
this.age = age;
}
public String getName() {
return name;
}
public String getStu_id() {
return stu_id;
}
public int getAge() {
return age;
}
public void setName(String name) {
this.name = name;
}
public void setSex(String sex) {
this.sex = sex;
}
public void setId_num(String stu_id) {
this.stu_id = stu_id;
}
public void setAge(int age) {
this.age = age;
}
public void setPhone_num(String phone_num) {
this.phone_num = phone_num;
}
public void display() {
System.out.println("姓名:"+name+"\n"+"年龄:"+age+"\n"+"性别:"+sex+"\n"+"学号:"+stu_id+"\n"+"手机号:"+phone_num);
}
}
2、再定义一个工具类,在此类中有主页面的欢迎页面,各种功能的实现函数
package project;
import java.util.*;
public class Tool {
Check_stu_info stu_choose;
Chaneg_stu_info change_stu;
Add_stu_info stu_info;
LinkedListstu;
Scanner con ;
public Tool(LinkedListstu,Check_stu_info stu_choose,Chaneg_stu_info change_stu,Add_stu_info stu_info,Scanner con) {
this.stu_choose = stu_choose;
this.change_stu = change_stu;
this.stu_info =stu_info;
this.con = con;
this.stu = stu;
}
public void welcome_custome() {
String s = "***********************************";
System.out.println(s);
System.out.println("欢迎进入学生管理系统!"+"\n"+"您可以进行以下操作:\n1、查看学生信息\n2、修改个人信息\n3、注册新账号\n4、退出系统");
System.out.println(s);
System.out.print("请选择你需要进行的操作>>>");
}
public void check_choose(Tool tool) {
int choose = con.nextInt();
switch(choose) {
case 1:
stu_choose.welcome_check_choose();
stu_choose.check_choose(stu,tool);
//查看个人信息函数
//con.close();
break;
case 2:
change_stu.change_stu_info(stu,tool);
//修改个人信息函数
//con.close();
break;
case 3:
stu_info.add_stu_info(stu,tool);
//注册新账号
//con.close();
break;
case 4:
//退出系统
System.out.println("退出系统成功!!!");
con.close();
System.exit(-1);
break;
default:
System.out.print("输入有误,请重新输入>>>");
check_choose(tool);
}
}
public void return_last(Tool tool) {
welcome_custome();
check_choose(tool);
}
}
3、 在上一个类中我们定义了查看个人信息函数,修改个人信息函数,注册新账号函数,退出系统.
接下来我们来写第一个查看个人信息函数.
package project;
import java.util.*;
/**查看信息
* 1、提示用户所需
* 2、查看所有学生信息
* 3、查看个别学生信息
* 4、当信息查询不到时,提醒并跳入注册学生信息函数界面.
*/
public class Check_stu_info {
Scanner con;
Add_stu_info stu_info;
public Check_stu_info(Scanner con,Add_stu_info stu_info) {
this.con = con;
this.stu_info = stu_info;
}
public void welcome_check_choose() {
String s = "***********************************";
System.out.println(s);
System.out.println("欢迎进入校园卡查询信息界面,您可以进行以下操作:\n1、查看全部信息\n2、查看个人信息\n3、返回上一级目录\n4、退出");
System.out.println(s);
System.out.print("请选择你需要进行的操作>>>");
}
public void check_choose(LinkedListstu,Tool tool) {
int choose = con.nextInt();
switch(choose) {
case 1:
//查看全部学生信息
show_all_stu_info(stu,tool);
//con.close();
break;
case 2:
//查看个人信息
one_stu_info(stu,tool,stu_info);
//con.close();
break;
case 3:
tool.return_last(tool);
//返回上一级目录
//con.close();
break;
case 4:
System.out.println("退出系统成功!!!");
System.exit(-1);
//con.close();
//退出系统
default:
System.out.println("输入有误,请重新输入>>>");
check_choose(stu,tool);
}
}
//检查一个人的信息
public void one_stu_info(LinkedListstu,Tool tool,Add_stu_info stu_info) {
//Scanner con = new Scanner(System.in);
System.out.println("请输人你需要查找学生的姓名>>>");
String name = con.next();
//con.close();
boolean flag = false;
if(stu.size() == 0) {
System.out.println("未添加学生信息,请先添加学生信息!!!\n1、添加学生信息\t2、退出系统\n请输入>>>");
int choose = con.nextInt();
if(choose == 1)
stu_info.add_stu_info(stu,tool);
if(choose == 2)
System.exit(-1);
}
if(stu.size() > 0)
{
for(int i = 0;i < stu.size();i++) {
System.out.println("2");
if(stu.get(i).getName()==name) {
stu.get(i).display();
flag = true;
break;
}
}
if(flag==true) {
System.out.println("查找成功!!!\n1、继续查找学生信息\t2、返回上一级菜单\t3、退出系统");
int choose = con.nextInt();
switch(choose) {
case 1:
one_stu_info(stu, tool,stu_info);
break;
case 2:
tool.return_last(tool);
break;
case 3:
System.exit(-1);
}
}
if(flag == false)
{
System.out.println("未查到学生信息,1、重新输入\t2、返回上一级菜单\n请输入>>>");
int choose = con.nextInt();
if(choose == 1)
one_stu_info(stu, tool, stu_info);
if(choose == 2)
tool.return_last(tool);
}
}
}
//查询所有人的信息
public void show_all_stu_info(LinkedListstu,Tool tool) {
if(stu.size() == 0) {
System.out.println("未添加学生信息,请先添加学生信息!!!\n1、添加学生信息\t2、退出系统\n请输入>>>");
int choose = con.nextInt();
if(choose == 1)
stu_info.add_stu_info(stu,tool);
if(choose == 2)
System.exit(-1);
}
else {
for(int i = 0;i
4、 接下来写修改个人信息类
package project;
import java.util.*;
/**
* 1、输入想要修改学生信息的名字
* 2、将输入的名字在列表中查询
* 3、查询不成功,提醒用户重新输入,查找成功后进行修改
*
*/
public class Chaneg_stu_info {
Scanner con;
public Chaneg_stu_info(Scanner con) {
this.con = con;
}
public void change_stu_info(LinkedListstu,Tool tool) {
System.out.print("请输入你想要修改学生信息的姓名>>>");
String name = con.next();
boolean flag = false;
for(int i = 0;i>>");
String change_name = con.next();
System.out.println();
System.out.print("请输入修改后的年龄>>>");
int change_age = con.nextInt();
System.out.println();
System.out.print("请输入修改后的学号>>>");
String change_id = con.next();
System.out.println();
System.out.print("请输入修改后的性别>>>");
String change_sex = con.next();
System.out.println();
System.out.print("请输入修改后的手机号>>>");
String change_phone = con.next();
System.out.println();
stu.get(i).setName(change_name);
stu.get(i).setId_num(change_id);
stu.get(i).setPhone_num(change_phone);
stu.get(i).setAge(change_age);
stu.get(i).setSex(change_sex);
}
}
if(flag == true) {
System.out.println("修改完成!!!\n1、返回上一级菜单\t2、退出系统");
int choose = con.nextInt();
if(choose == 1)
tool.return_last(tool);
if(choose == 2)
System.exit(-1);
}
if(flag == false) {
System.out.println("未找到该学生信息\n1、重新输入\t2、退出");
int choose = con.nextInt();
if(choose == 1)
change_stu_info(stu, tool);
if(choose == 2)
System.exit(-1);
}
}
}
5、添加学生信息类
package project;
import java.util.*;
public class Add_stu_info {
Scanner con;
public Add_stu_info(Scanner con) {
this.con = con;
}
public void add_stu_info(LinkedListstu,Tool tool) {
//Scanner con = new Scanner(System.in);
String s = "***********************************";
System.out.print(s+"\n请输入添加学生的姓名>>>");
String name = con.next();
System.out.print("请输入添加学生的性别>>>");
String sex = con.next();
System.out.print("请输入添加学生的年龄>>>");
int age = con.nextInt();
System.out.print("请输入添加学生的学号>>>");
String id = con.next();
System.out.print("请输入添加学生的手机号>>>");
String phone_num = con.next();
Stu_class student = new Stu_class(name, id, age, phone_num, sex);
stu.add(student);
System.out.println("添加完成!!!\n"+s);
//返回上一级目录
System.out.println("请输入:\n1、返回上一级目录\t2、退出系统");
tool.welcome_custome();
tool.check_choose(tool);
}
}
6、最后定义主体类,对上面所有代码进行整合,创建所需要的对象,再将对象作为参数进行传递,就可实现简单的学生信息管理系统
package project;
import java.util.LinkedList;
import java.util.Scanner;
public class Stu_main {
static LinkedListstu;
public static void main(String[] args) {
//欢迎界面
//创建存放学生信息的列表
stu = new LinkedList();
//创建输入入口
Scanner con = new Scanner(System.in);
//创建添加学生信息的对象
Add_stu_info stu_info = new Add_stu_info(con);
//创建修改学生信息的对象
Chaneg_stu_info change_stu = new Chaneg_stu_info(con);
//创建查询学生信息的对象
Check_stu_info stu_choose = new Check_stu_info(con,stu_info);
//创建工具类对象
Tool tool = new Tool(stu,stu_choose,change_stu,stu_info,con);
tool.welcome_custome();
tool.check_choose(tool);
con.close();
}
}