员工管理系统功能菜单:
------1.查看所有------
------2.录入信息------
------3.查找员工------
------4.修改信息------
------5.员工离职------
------6.谢谢使用------
Employee.java
package com.employee;
//Employee对象:属性,构造方法,方法
public class Employee {
private String ename;
private String eno;
private String depart;
private String position;
public Employee(){
}
public Employee(String Eno,String Ename,String Depart,String Position){
this.ename=Ename;
this.eno=Eno;
this.depart=Depart;
this.position=Position;
}
public String getEname() {
return ename;
}
public void setEname(String ename) {
this.ename = ename;
}
public String getEno() {
return eno;
}
public void setEno(String eno) {
this.eno = eno;
}
public String getDepart() {
return depart;
}
public void setDepart(String depart) {
this.depart = depart;
}
public String getPosition() {
return position;
}
public void setPosition(String position) {
this.position = position;
}
//当调用Employee类的对象时可以输出String类型的字符串
@Override
public String toString() {
return eno+"\t"+ename+"\t"+depart+"\t"+position;
}
}
Menu.java
package com.employee;
import java.util.Scanner;
public class Menu {
public void printMenu() {
System.out.println("欢迎进入");
System.out.println("------1.查看所有------");
System.out.println("------2.录入信息------");
System.out.println("------3.查找员工------");
System.out.println("------4.修改信息------");
System.out.println("------5.员工离职------");
System.out.println("------6.谢谢使用------");
}
// 初始化员工
Employee[] employees = new Employee[5];
int size = 0; // 数组里真实的人数
public Menu() {
Employee e1 = new Employee("001", "peng", "创意部", "经理");
Employee e2 = new Employee("002", "chen", "it部", "经理");
Employee e3 = new Employee("003", "xiong", "人事部", "经理");
Employee e4 = new Employee("004", "cao", "财务部", "经理");
Employee e5 = new Employee("005", "huli", "保洁部", "经理");
employees[size++] = e1; // 先使用后自增
employees[size++] = e2;
employees[size++] = e3;
employees[size++] = e4;
employees[size++] = e5;
}
// 查看所有员工
public void allEmployees() {
print();
for (int i = 0; i < size; i++) {
System.out.println(employees[i]);
}
}
// 2.录入信息
Scanner sc = new Scanner(System.in);
public void addEmployee() {
System.out.println("请输入员工编号:");
String eno = sc.next();
System.out.println("请输入员工姓名:");
String ename = sc.next();
System.out.println("请输入员工部门:");
String depart = sc.next();
System.out.println("请输入员工职位:");
String position = sc.next();
Employee employee = new Employee(eno, ename, depart, position);
// 扩容
resize();
// 添加进去
employees[size++] = employee;
// 添加成功
System.out.println("录入成功");
}
// 扩容
public void resize() {
if (size >= employees.length) {
Employee[] temp = new Employee[size * 2];
for (int i = 0; i < employees.length; i++) {
temp[i] = employees[i];
}
employees = temp;
}
}
// 打印头标
public void print() {
System.out.println("员工号\t姓名\t部门\t职位");
}
// 3.查找员工
public void printSubMenu() {
System.out.println("-----1.按员工号查询-----");
System.out.println("-----2.按姓名查询-----");
System.out.println("-----3.返回上一级-----");
System.out.println("-----请输入操作序号:-----");
}
public void getEmployee() {
printSubMenu();
boolean f = true;
while (f) {
int flag = sc.nextInt();
if (flag == 1) {
// 按员工号查询
System.out.println("请输入您想查找的员工号:");
String eno = sc.next();
Employee employee = getEmployeeByEno(eno);
if (employee == null)
System.out.println("查无此人");
else {
print();
System.out.println(employee);
}
} else if (flag == 2) {
// 按姓名查询
System.out.println("请输入您想查找的员工姓名:");
String ename = sc.next();
Employee employee = getEmployeeByEname(ename);
if (employee == null)
System.out.println("查无此人");
else {
print();
System.out.println(employee);
}
} else {
// 返回上一级
printMenu();
f = false;
}
}
}
// 按员工号查找
public Employee getEmployeeByEno(String eno) {
Employee employee = null;
for (int i = 0; i < size; i++) {
if (eno.equals(employees[i].getEno())){
employee = employees[i];
break;
}
}
return employee;
}
// 按姓名查找
public Employee getEmployeeByEname(String ename) {
Employee employee = null;
for (int i = 0; i < size; i++) {
if (ename.equals(employees[i].getEname())){
employee = employees[i];
break;
}
}
return employee;
}
//修改信息
public void upEmployee(){
System.out.println("请输入您想修改的员工编号:");
String eno=sc.next();
Employee employee = getEmployeeByEno(eno);
if (employee == null)
System.out.println("查无此人");
else {
//修改值
System.out.println("您想修改姓名为:");
String ename=sc.next();
System.out.println("您想修改部门为:");
String depart=sc.next();
System.out.println("您想修改职位为:");
String position=sc.next();
for(int i=0;i<size;i++){
if(eno.equals(employees[i].getEno())){
employee.setEname(ename);
employee.setDepart(depart);
employee.setPosition(position);
}
}
System.out.println("修改成功");
}
}
//员工离职,删除信息
public void delEmployee(){
System.out.println("请输入您想删除的员工编号:");
String eno=sc.next();
Employee employee = getEmployeeByEno(eno);
if (employee == null)
System.out.println("查无此人");
else {
//删除值
int index=-1;
for(int i=0;i<size;i++){
if(eno.equals(employees[i].getEno())){
index=i;
break;
}
}
for(int i=index;i<size-1;i++){
employees[i]=employees[i+1];
}
employees[size-1]=null;
//总数-1
size--;
System.out.println("删除成功");
}
}
//判断是否想要退出
public boolean exit(){
System.out.println("请您输入Y/N:Y退出,N不退出");
String f=sc.next();
/*if(f=="Y"){
//退出
return false;
}
else if(f=="N"){
return true;
}
else{
return true;
}*/
//"Y".equalsIgnoreCase(f)
if(f.equals("Y")){
//退出
return false;
}
else if("N".equalsIgnoreCase(f)){
return true;
}
else{
return true;
}
}
}
Test.java
package com.employee;
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Menu menu = new Menu();
menu.printMenu();
//输入编号进入相应的功能
Scanner sc=new Scanner(System.in);
boolean flag=true;
System.out.print("请输入您想进入的功能模块序号:");
while(flag){
int op=sc.nextInt();
switch(op){
case 1:
System.out.println("1.查看所有");
menu.allEmployees();
break;
case 2:
System.out.println("2.录入信息");
menu.addEmployee();
break;
case 3:
System.out.println("3.查找员工");
menu.getEmployee();
break;
case 4:
System.out.println("4.修改信息");
menu.upEmployee();
break;
case 5:
System.out.println("5.员工离职");
menu.delEmployee();
break;
case 6:
//System.out.println("6.谢谢使用,退出系统");
//flag=false;
flag=menu.exit();
break;
default:
System.out.println("输入序号有误");
}
}
}
}