一、需求
1,定义06班学员类,包含三个属性,姓名\年龄\籍贯\电话号码
2,完成学员数据的录入,学员数据按姓名查询
3,完成学员信息的修改,按照电话号码
4,删除指定学员
使用面向对象操作 .
二、代码
1.学生类
package test0727.demo1;
/**
* 学生类
*/
public class Student {
private String stu_name; //姓名
private Integer stu_age; //年龄
private String stu_place; //籍贯
private Long stu_tel; //电话号码
public Student() {
}
public Student(String stu_name, Integer stu_age, String stu_place, Long stu_tel) {
this.stu_name = stu_name;
this.stu_age = stu_age;
this.stu_place = stu_place;
this.stu_tel = stu_tel;
}
public String getStu_name() {
return stu_name;
}
public void setStu_name(String stu_name) {
this.stu_name = stu_name;
}
public Integer getStu_age() {
return stu_age;
}
public void setStu_age(Integer stu_age) {
this.stu_age = stu_age;
}
public String getStu_place() {
return stu_place;
}
public void setStu_place(String stu_place) {
this.stu_place = stu_place;
}
public Long getStu_tel() {
return stu_tel;
}
public void setStu_tel(Long stu_tel) {
this.stu_tel = stu_tel;
}
@Override
public String toString() {
return stu_name + " " + stu_age + " " + stu_place + " " + stu_tel;
}
@Override
public boolean equals(Object obj) {
if(obj != null && obj instanceof Student) {
Student stu = (Student)obj;
if(this.stu_name == stu.getStu_name()) {
return true;
}
}
return false;
}
}
2.学生业务类
package test0727.demo1;
import java.util.ArrayList;
import java.util.Scanner;
/**
* 学生业务类
*/
public class StudentService {
private ArrayList<Student> stuArrList = new ArrayList<>(); //学生集合
private Student student; //学生
private Scanner sc = new Scanner(System.in); //键盘扫描器
private boolean flag; //标记
//录入学员
public void insert() {
System.out.println("请输入新增学员姓名:");
String name = sc.next();
System.out.println("请输入新增学员年龄:");
Integer age = sc.nextInt();
System.out.println("请输入新增学员籍贯:");
String place = sc.next();
System.out.println("请输入新增学员电话:");
Long tel = sc.nextLong();
student = new Student(name,age,place,tel);
stuArrList.add(student);
System.out.println("恭喜你,录入学员成功!");
}
//删除指定学员
public void delete() {
flag = false;
System.out.println("请输入学员姓名:");
String name = sc.next();
for (int i = 0; i < stuArrList.size(); i++) {
if(stuArrList.get(i).getStu_name().equals(name)) {
stuArrList.remove(i);
flag = true;
}
}
if(flag) {
System.out.println("恭喜你,删除学员成功!");
} else {
System.out.println("对不起,没有找到要删除的学员!");
}
}
//修改学员信息(按照电话号码)
public void update() {
flag = false;
System.out.println("请输入要修改的学员的电话号码:");
Long tel = sc.nextLong();
for (int i = 0; i < stuArrList.size(); i++) {
if(stuArrList.get(i).getStu_tel().equals(tel)) {
System.out.println("请输入新增学员姓名:");
String name = sc.next();
System.out.println("请输入新增学员年龄:");
Integer age = sc.nextInt();
System.out.println("请输入新增学员籍贯:");
String place = sc.next();
System.out.println("请输入新增学员电话:");
tel = sc.nextLong();
student = new Student(name,age,place,tel);
stuArrList.set(i,student);
flag = true;
}
}
if(flag) {
System.out.println("恭喜你,修改学员成功!");
} else {
System.out.println("对不起,没有找到要修改的学员!");
}
}
//查询学员信息(按照姓名)
public void select() {
flag = false;
System.out.println("请输入需要查询的学员姓名:");
String name = sc.next();
for (int i = 0; i < stuArrList.size(); i++) {
if(stuArrList.get(i).getStu_name().equals(name)) {
System.out.println("恭喜你,查询学员成功!");
System.out.println(stuArrList.get(i));
flag = true;
}
}
if(!flag) {
System.out.println("对不起,没有找到要查询的学员!");
}
}
//打印所有学员信息
public void printStudent() {
System.out.println("恭喜你,打印所有学员成功!");
for (int i = 0; i < stuArrList.size(); i++) {
System.out.println(stuArrList.get(i));
}
}
//学生管理系统菜单
public void menu() {
StudentService stuService = new StudentService();
System.out.println("欢迎来到学生管理系统!");
while (true) {
System.out.println();
System.out.println("1.增 2.删 3.改 4.查 5.打印 (其他数字.退出系统)");
System.out.println("请输入你的指令:");
int order = sc.nextInt(); //指令
switch(order) {
case 1:
stuService.insert();
break;
case 2:
stuService.delete();
break;
case 3:
stuService.update();
break;
case 4:
stuService.select();
break;
case 5:
stuService.printStudent();
break;
default:
System.out.println("退出系统成功,期待你下次使用!");
return;
}
}
}
}
3.测试类
package test0727.demo1;
/*
* 测试类
* 作业:
* 1,定义06班学员类,包含三个属性,姓名\年龄\籍贯\电话号码
* 2,完成学员数据的录入,学员数据按姓名查询
* 3,完成学员信息的修改,按照电话号码
* 4,删除指定学员
* 面向对象操作 .
*/
public class Test {
public static void main(String[] args) {
StudentService stuService = new StudentService();
stuService.menu();
}
}
三、运行结果
欢迎来到学生管理系统!
1.增 2.删 3.改 4.查 5.打印 (其他数字.退出系统)
请输入你的指令:
1
请输入新增学员姓名:
qy
请输入新增学员年龄:
19
请输入新增学员籍贯:
邵阳
请输入新增学员电话:
152
恭喜你,录入学员成功!
1.增 2.删 3.改 4.查 5.打印 (其他数字.退出系统)
请输入你的指令:
1
请输入新增学员姓名:
QY
请输入新增学员年龄:
20
请输入新增学员籍贯:
长沙
请输入新增学员电话:
135
恭喜你,录入学员成功!
1.增 2.删 3.改 4.查 5.打印 (其他数字.退出系统)
请输入你的指令:
5
恭喜你,打印所有学员成功!
qy 19 邵阳 152
QY 20 长沙 135
1.增 2.删 3.改 4.查 5.打印 (其他数字.退出系统)
请输入你的指令:
2
请输入学员姓名:
qy
恭喜你,删除学员成功!
1.增 2.删 3.改 4.查 5.打印 (其他数字.退出系统)
请输入你的指令:
5
恭喜你,打印所有学员成功!
QY 20 长沙 135
1.增 2.删 3.改 4.查 5.打印 (其他数字.退出系统)
请输入你的指令:
3
请输入要修改的学员的电话号码:
135
请输入新增学员姓名:
Bei-Zhen
请输入新增学员年龄:
19
请输入新增学员籍贯:
湖南
请输入新增学员电话:
188
恭喜你,修改学员成功!
1.增 2.删 3.改 4.查 5.打印 (其他数字.退出系统)
请输入你的指令:
4
请输入需要查询的学员姓名:
Bei-zhen
对不起,没有找到要查询的学员!
1.增 2.删 3.改 4.查 5.打印 (其他数字.退出系统)
请输入你的指令:
4
请输入需要查询的学员姓名:
Bei-Zhen
恭喜你,查询学员成功!
Bei-Zhen 19 湖南 188
1.增 2.删 3.改 4.查 5.打印 (其他数字.退出系统)
请输入你的指令:
0
退出系统成功,期待你下次使用!