1 package ArrayList的小程序;
2 import java.io.*;
3 import java.util.*;
4 public class kkk {
5
6 /**
7 * 作者:Mr.fan
8 * 功能:展示一个小的ArrayList链表的 员工工资记录系统
9 */
10 public static void main(String[] args)throws Exception
11 {
12 //创建EmpManage对象
13 EmpManage em=new EmpManage();
14 BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
15 //作出一个简易菜单
16 while(true)
17 {
18 System.out.println("请选择你要进行的操作");
19 System.out.println("1:表示添加一个雇员");
20 System.out.println("2:查找一个雇员");
21 System.out.println("3:修改一个雇员的工资");
22 System.out.println("4:删除一个雇员");
23 System.out.println("5:退出系统");
24 System.out.println("6:显示出所有员工的信息");
25
26 String operType=br.readLine();
27
28 if(operType.equals("1"))
29 {
30 System.out.println("请输入编号:");
31 String empNo=br.readLine();
32 System.out.println("请输入名字:");
33 String name=br.readLine();
34 System.out.println("请输入工资:");
35 float sal=Float.parseFloat(br.readLine());//再次看到这个 还是觉得叼叼的 很方便
36
37 Emp emp=new Emp(empNo,name,sal);
38
39 em.addEmp(emp);
40 }
41 else if(operType.equals("2"))
42 {
43 System.out.println("请输入编号:");
44 String empNo=br.readLine();
45
46 em.showInfo(empNo);
47 }
48 else if(operType.equals("3"))
49 {
50 System.out.println("请输入要修改工资的员工编号:");
51 String gaiNO=br.readLine();
52 System.out.println("请输入修改后工资:");
53 float gaiSAL=Float.parseFloat(br.readLine());
54 em.updateSal(gaiNO,gaiSAL);
55 }
56 else if(operType.equals("4"))
57 {
58 System.out.println("请输入要删除员工的编号:");
59 String NOdel=br.readLine();
60 em.delEmp(NOdel);
61 }
62 else if(operType.equals("5"))
63 {
64 //退出系统
65 System.exit(0);
66 }
67 else if(operType.equals("6"))
68 {
69 ArrayList nx=em.getal();
70 for(int i=0;i<nx.size();i++)
71 {
72 //取出Emp对象
73 Emp emp=(Emp)nx.get(i);
74
75 System.out.print("编号="+emp.getEmpNo());
76 System.out.print(" 名字="+emp.getName());
77 System.out.print(" 工资="+emp.getSal());
78 System.out.println("
");
79
80 }
81 }
82 }
83 }
84
85 }
86 //采用面向对象 封装思想 来建造一个雇员管理类
87 class EmpManage
88 {
89 /*封装思想都会采用 保护 */ private ArrayList al=null;
90 public EmpManage()//构造
91 {
92 al=new ArrayList();
93 }
94 //加入员工
95 public void addEmp(Emp emp)
96 {
97 al.add(emp);
98 }
99 //显示员工的相关信息
100 public void showInfo(String empNo)
101 {
102 //遍历整个ArrayList
103 for(int i=0;i<al.size();i++)
104 {
105 //取出Emp对象
106 Emp emp=(Emp)al.get(i);
107 //比较编号
108 if(emp.getEmpNo().equals(empNo))
109 {
110 System.out.println("找到该员工,他的信息是:");
111 System.out.println("编号="+empNo);
112 System.out.println("名字="+emp.getName());
113 System.out.println("工资="+emp.getSal());
114 }
115 }
116 }
117 public void updateSal(String empNo,float newSal)
118 {
119 for(int i=0;i<al.size();i++)
120 {
121 Emp emp=(Emp)al.get(i);
122 if(emp.getEmpNo().equals(empNo))
123 {
124 //修改薪水
125 emp.setSal(newSal);
126 }
127 }
128 }
129 public void delEmp(String empNo)
130 {
131 for(int i=0;i<al.size();i++)
132 {
133 Emp emp=(Emp)al.get(i);
134 if(emp.getEmpNo().equals(empNo))
135 {
136 al.remove(i);
137 }
138 }
139 }
140 public ArrayList getal()
141 {
142 return al;
143 }
144 }
145 class Emp
146 {
147
148 private String empNo;
149 private String name;
150 private float sal;
151 public Emp(String empNo,String name,float sal)
152 {
153 this.empNo=empNo;
154 this.name=name;
155 this.sal=sal;
156 }
157 public String getEmpNo() {
158 return empNo;
159 }
160 public void setEmpNo(String empNo) {
161 this.empNo = empNo;
162 }
163 public String getName() {
164 return name;
165 }
166 public void setName(String name) {
167 this.name = name;
168 }
169 public float getSal() {
170 return sal;
171 }
172 public void setSal(float sal) {
173 this.sal = sal;
174 }
175 }