1 package com.test; 2 3 import java.io.BufferedReader; 4 import java.io.IOException; 5 import java.io.InputStreamReader; 6 import java.util.ArrayList; 7 8 public class test2 { 9 public static void main(String[] args) throws IOException{ 10 //创建EmpManage对象 11 EmpManage em=new EmpManage(); 12 //引入IO流 13 BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); 14 //作出一个简易菜单 15 while(true){ 16 System.out.println("请选择你要进行的操作:"); 17 System.out.println("1:表示添加一个雇员"); 18 System.out.println("2:查找一个雇员"); 19 System.out.println("3:修改一个雇员工资"); 20 System.out.println("4:删除一个雇员"); 21 System.out.println("5:退出系统"); 22 23 String operType=br.readLine(); 24 25 if(operType.equals("1")){ 26 System.out.println("请输入编号:"); 27 String empNo=br.readLine(); 28 System.out.println("请输入名字:"); 29 String name=br.readLine(); 30 System.out.println("请输入工资:"); 31 Float sal=Float.parseFloat(br.readLine()); 32 //构造对象 33 Emp emp=new Emp(empNo,name,sal); 34 35 em.addEmp(emp); 36 } 37 else if(operType.equals("2")){ 38 System.out.println("请输入一个编号:"); 39 String empNo=br.readLine(); 40 em.showinfo(empNo); 41 } 42 else if(operType.equals("3")){ 43 System.out.println("请输入一个编号:"); 44 String empNo=br.readLine(); 45 System.out.println("请输入修改后的工资:"); 46 Float sal=Float.parseFloat(br.readLine()); 47 Float newSal=Float.parseFloat(br.readLine()); 48 em.updateSal(empNo, newSal); 49 } 50 else if(operType.equals("4")){ 51 System.out.println("请输入一个编号:"); 52 String empNo=br.readLine(); 53 em.delEmp(empNo); 54 } 55 else if(operType.equals("5")){ 56 System.exit(-1); 57 } 58 } 59 60 } 61 62 } 63 64 //雇员管理类 65 class EmpManage{ 66 private ArrayList a=null; 67 //构造函数(初始化成员变量) 68 public EmpManage(){ 69 a=new ArrayList(); 70 } 71 //加入员工 72 public void addEmp(Emp emp){ 73 a.add(emp); 74 } 75 //显示员工的相关信息 76 public void showinfo(String empNo){ 77 //遍历整个ArrayList 78 for(int i=0;i<a.size();i++){ 79 //取出Emp对象 80 Emp emp=(Emp)a.get(i); 81 //比较编号!!!不能用等号,字符相等是指地址相等,.equals比较的是内容 82 if(emp.getNumber().equals(empNo)){ 83 System.out.println("找到该员工,信息:"); 84 System.out.println("编号"+empNo); 85 System.out.println("姓名"+emp.getName()); 86 System.out.println("薪水"+emp.getSal()); 87 88 } 89 } 90 } 91 92 //修改工资 93 public void updateSal(String empNo,float newSal){ 94 for(int i=0;i<a.size();i++){ 95 Emp emp=(Emp)a.get(i); 96 if(emp.getNumber().equals(empNo)){ 97 //修改工资 98 emp.setSal(newSal); 99 } 100 } 101 } 102 103 //删除某个员工 104 public void delEmp(String empNo){ 105 for(int i=0;i<a.size();i++){ 106 Emp emp=(Emp)a.get(i); 107 if(emp.getNumber().equals(empNo)){ 108 a.remove(i); //按编号 109 //a.remove(emp); 110 } 111 } 112 } 113 } 114 115 //雇员类 116 class Emp{ 117 private String number; 118 private String name; 119 private float sal; 120 121 public String getNumber() { 122 return number; 123 } 124 public void setNumber(String number) { 125 this.number = number; 126 } 127 public String getName() { 128 return name; 129 } 130 public void setName(String name) { 131 this.name = name; 132 } 133 public float getSal() { 134 return sal; 135 } 136 public void setSal(float sal) { 137 this.sal = sal; 138 } 139 140 //构造函数 141 public Emp(String number,String name,float sal){ 142 this.number=number; 143 this.name=name; 144 this.sal=sal; 145 } 146 }