package com.employee.main;
import java.util.ArrayList;
import java.util.Scanner;
import com.employee.pojo.Employee;
import com.employee.service.EmployeeService;
/**
1.编写一个员工信息管理系统:员工信息包括有(员工编号、姓名、性别、手机号码),系统以员工对象数组(List)的方式存储员工信息
系统对员工的操作包括:新增C、查询R、修改U、删除D。
大概流程如下:
请选择操作:退出请输入bye
1.新增
2.查询
3.修改
4.删除
输入:1
请输入:员工编号,姓名,性别,手机号码
输入:员工编号,姓名,性别,手机号码
新增完成,请继续操作!
请选择操作:退出请输入bye
1.新增
2.查询
3.修改
4.删除
输入:2
请输入员工的姓名
钱钟书
查询员工:
员工编号,姓名,性别,手机号码
查询完毕,请继续操作!
请选择操作:退出请输入bye
1.新增
2.查询
3.修改
4.删除
输入:3
请输入要修改的员工编号:
10000
员工不存在,请继续操作!
请选择操作:退出请输入bye
1.新增
2.查询
3.修改
4.删除
输入4
请输入员工编号
删除成功
*
*/
//main函数只做控制,输入输出
public class EmployeeMain {
public static void main(String[] args) {
//定义EmployeeService,用这个类的对象,在另一个类里,调用这个类的方法
EmployeeService employeeService=new EmployeeService();
while(true) {
//菜单
System.out.println("请选择操作:退出请输入bye\r\n" + "1.新增\r\n" + "2.查询\r\n" + "3.修改\r\n" + "4.删除");
//if 判断输入的字符串,选择
Scanner scanner=new Scanner(System.in);
String select =scanner.nextLine();//必须是nextLine,因为
if("1".equals(select)) {//添加学生.................................................................
System.out.println("请输入:员工编号,姓名,性别,手机号码");
//输入的是一行字符串,
String info=scanner.nextLine();
//按英文逗号截取,用split截取后,放入到字符串数组里
String[] infos=info.split(",");
//infos[0]是截取后的员工编号,infos[1]是姓名...,然后要把字符串数组里的每一个员工属性,给员工对象 里的成员赋值,
//先创建员工对象
Employee employee=new Employee();
//再为对象里每一个成员赋值
employee.setId(infos[0]);
employee.setName(infos[1]);
employee.setSex(infos[2]);
employee.setPhone(infos[3]);
//因为集合数组是在EmployeeService类里创建的,要想在本类里把对象添加到集合数组里,就需要调用EmployeeService类的对象,再用其类里的添加方法
//用那个类的对象,调用那个类里的方法,把 员工对象添加集合里
boolean b=employeeService.addEmployee(employee);//因为这个方法是boolean,所以返回值也是boolean类型
if(b) {
System.out.println("新增完成,请继续操作!");
}else {
System.out.println("添加失败!");
}
}else if("2".equals(select)) {//查询,全部.............................................
//定义一个数组接收,将已经添加到集合里的数据放到新定义的集合数组里
System.out.println("全部员工为:");
ArrayList<Employee> list=employeeService.getEmployees();
for (int i = 0; i < list.size(); i++) {
//获取集合里的每一个对象
System.out.println(list.get(i));
}
}else if("3".equals(select)) {//修改.................................................
System.out.println("请输入要修改的员工编号:");
String id=scanner.nextLine();
Employee employee=employeeService.modifyEmployee(id);
if(employee==null) {
System.out.println("不存在员工!");
}else {
System.out.println("请输入要修改的员工姓名:");
String name=scanner.nextLine();
//输入不为空修改,否则
if(name!=null && !"".equals(name)) {
employee.setName(name);
}
}
}else if("4".equals(select)) {//删除.................................................
System.out.println("请输入员工编号:");
String id=scanner.nextLine();
int index=employeeService.deleteEmployee(id);
if(index==-1) {
System.out.println("删除失败!");
}else {
System.out.println("删除成功!");
}
}else if("bye".equals(select)) {
System.out.println("退出系统,欢迎下次使用!");
//break;
System.exit(0);
}
}
}
}
package com.employee.service;
//业务逻辑处理的
import java.util.ArrayList;
import com.employee.pojo.Employee;
public class EmployeeService {
//创建 员工 集合数组,放入的是员工对象
private ArrayList<Employee> employees=new ArrayList<>();
//把员工对象添加到集合数组里
public boolean addEmployee(Employee employee) {
return employees.add(employee);
}
//查找全部时需要获取集合里全部的对象
public ArrayList<Employee> getEmployees() {
return employees;
}
public int deleteEmployee(String id) {
int i=0;
for (Employee employee : employees) {
if(employee.getId().equals(id)) {
employees.remove(employee);
return i++;
}
}
return -1;
}
public Employee modifyEmployee(String id) {
for (Employee employee : employees) {
if(employee.getId().equals(id)) {
System.out.println(employee);
return employee;
}
}
return null;
}
}
package com.employee.pojo;
/**
pojo :Plain Ordinary Java Object简单的普通的java对象
pojo规范:
1.将属性都私有化
2.保留默认的构造函数
3.每个私有属性都有set,get方法,进行访问和更改
4.重写toString
*/
public class Employee {
//员工信息包括有(员工编号、姓名、性别、手机号码)
private String id;
private String name;
private String sex;
private String phone;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
@Override
public String toString() {
return "员工编号:" + id + ", 姓名:" + name + ", 性别:" + sex + ", 手机号码:" + phone;
}
}