import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import javax.swing.text.html.HTMLDocument.Iterator;
public class ListTest2 {
private static final int Interge = 0;
public static void main(String[] args) throws IOException {
EmpManage em = new EmpManage();
//制作控制台
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br=new BufferedReader(isr);
while(true){
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,按照薪水从高到低输出员工信息");
String operType = br.readLine();
if(operType.equals("1")){
System.out.println("请输入该员工的编号:");
String empNo = br.readLine();
System.out.println("请输入该员工的姓名:");
String name = br.readLine();
System.out.println("请输入该员工的年龄:");
int age = Integer.parseInt(br.readLine());
System.out.println("请输入该员工的薪水:");
float sal = Float.parseFloat(br.readLine());
Emp emp = new Emp(empNo,name,age,sal);
em.add(emp);
}else if(operType.equals("2")){
System.out.println("请输入该员工的编号:");
String empNo =br.readLine();
em.showInfo(empNo);
}else if(operType.equals("3")){
em.showAll();
}else if(operType.equals("4")){
System.out.println("请输入该员工编号:");
String empNo = br.readLine();
System.out.println("请输入该员工的薪水:");
float sal = Float.parseFloat(br.readLine());
em.updateSal(empNo, sal);
}else if(operType.equals("5")){
System.out.println("请输入该员工的编号:");
String empNo = br.readLine();
em.remove(empNo);
}else if(operType.equals("6")){
em.paixu();
}
}
}
}
class EmpManage{
//要管理emp,首先把其放入al容器中
private ArrayList al=null;
//构造
public EmpManage(){
al=new ArrayList();
}
//1.加入雇员
public void add(Emp emp){
al.add(emp);
}
//2.根据员工编号,查找员工信息
public void showInfo(String empNo){
for(int i=0;i<al.size();i++){
Emp emp =(Emp) al.get(i);
if(empNo.equals(emp.getEmpNo())){
System.out.println("找到该员工了!");
System.out.println("编号:"+emp.getEmpNo()+" 姓名:"+emp.getName());
System.out.println("年龄:"+emp.getAge()+" 薪水:"+emp.getSal());
break;
}
}
}
//3.显示所有员工的信息
public void showAll(){
for(int i=0;i<al.size();i++){
Emp emp=(Emp) al.get(i);
System.out.println("编号:"+emp.getEmpNo()+" 姓名:"+emp.getName());
System.out.println("年龄:"+emp.getAge()+" 薪水:"+emp.getSal());
}
}
//4.修改员工薪水
public void updateSal(String empNo,float sal){
for(int i=0;i<al.size();i++){
Emp emp = (Emp) al.get(i);
System.out.println("已经进来了,要修改了!!");
if(emp.getEmpNo().equals(empNo)){
System.out.println("已找员工:"+emp.getEmpNo()+" 正在修改其薪水!");
emp.setSal(sal);
System.out.println("已将员工"+empNo+"的薪水修改为: "+sal);
break;
}
}
}
//5.员工离职时将其从系统中删除
public void remove(String empNo){
for(int i=0;i<al.size();i++){
Emp emp = (Emp) al.get(i);
if(emp.getEmpNo().equals(empNo)){
//al.remove(i);
al.remove(emp);
}
}
}
//6.将员工按照薪水从高到低排序输出
public void paixu(){
for(int i=0;i<al.size();i++){
Emp emp1= (Emp) al.get(i);
for(int j=i;j<al.size();j++){
Emp emp2 = (Emp) al.get(j);
if(emp1.getSal()<emp2.getSal()){
System.out.println("正在排序中!!");
Emp temp= (Emp)al.get(i);
emp1=(Emp) al.get(j);
emp2=temp;
}
}
}
for(int i=0;i<al.size();i++){
Emp emp = (Emp) al.get(i);
System.out.println("姓名:"+emp.getName()+"薪水:"+emp.getSal());
}
}
//7.统计平均工资、最高、最低工资
}
class Emp{
private String empNo;
public String getEmpNo() {
return empNo;
}
public void setEmpNo(String empNo) {
this.empNo = empNo;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public float getSal() {
return sal;
}
public void setSal(float sal) {
this.sal = sal;
}
private String name;
private int age;
private float sal;
public Emp(String enpNo, String name, int age, float sal) {
super();
this.empNo = enpNo;
this.name = name;
this.age = age;
this.sal = sal;
}
}
请选择你要进行的操作:
1,增加员工
2,查找员工
3,显示所有员工的信息
4,修改员工薪水
5,员工离职时将其从系统中删除
6,按照薪水从高到低输出员工信息
1
请输入该员工的编号:
01
请输入该员工的姓名:
唐僧
请输入该员工的年龄:
35
请输入该员工的薪水:
8000
请选择你要进行的操作:
1,增加员工
2,查找员工
3,显示所有员工的信息
4,修改员工薪水
5,员工离职时将其从系统中删除
6,按照薪水从高到低输出员工信息
1
请输入该员工的编号:
02
请输入该员工的姓名:
悟空
请输入该员工的年龄:
25
请输入该员工的薪水:
7000
请选择你要进行的操作:
1,增加员工
2,查找员工
3,显示所有员工的信息
4,修改员工薪水
5,员工离职时将其从系统中删除
6,按照薪水从高到低输出员工信息
3
编号:01 姓名:唐僧
年龄:35 薪水:8000.0
编号:02 姓名:悟空
年龄:25 薪水:7000.0
请选择你要进行的操作:
1,增加员工
2,查找员工
3,显示所有员工的信息
4,修改员工薪水
5,员工离职时将其从系统中删除
6,按照薪水从高到低输出员工信息
6
姓名:唐僧薪水:8000.0
姓名:悟空薪水:7000.0
很遗憾,最想完成的第六个功能“按照薪水从高到低 输出信息”的功能没有实现,研究半天没有实现,留着后面再看!现在首要的是熟悉一下ArrayList的用法!