package 集合;
import java.util.*;
import java.io.*;
public class 信息管理系统 {

    /**
     * @param args
     */
    public static void main(String[] args)throws Exception {
        // TODO Auto-generated method stub
        //创建一个对象
        EmpManage em=new EmpManage();
        BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
        //做出一个简易菜单
        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 number=br.readLine();
                System.out.println("请输入姓名:");
                String name=br.readLine();
                System.out.println("请输入工资:");
                float sal=Float.parseFloat(br.readLine());
                Emp emp=new Emp(number,name,sal);
                em.addEmp(emp);
            }
            else if(operType.equals("2"))
            {
                System.out.println("请输入编号:");
                String number=br.readLine();
                em.showInfo(number);
            }
            else if(operType.equals("3"))
            {
                System.out.println("请输入编号:");
                String number=br.readLine();
                System.out.println("请输入新的工资:");
                float newsal=Float.parseFloat(br.readLine());
                em.updateSal(number, newsal);
            }
            else if(operType.equals("4"))
            {
                System.out.println("请输入编号:");
                String number=br.readLine();
                em.delEmp(number);
            }
            else if(operType.equals("5"))
            {
                em.showAllInfo();
            }
            else if(operType.equals("6"))
            {
                System.exit(0);
            }
            
        }
    } 

}
//雇员管理类
class EmpManage
{
    private ArrayList a1=null;
    public EmpManage()
    {
        a1=new ArrayList();
    }
    //加入员工
    public void addEmp(Emp emp)
    {
        a1.add(emp);
    }
    //显示员工相关信息
    public void showInfo(String number)
    {
        //遍历整个ArrayList
        for(int i=0;i<a1.size();i++)
        {
            //取出
            Emp emp=(Emp)a1.get(i);
            //比较
            if(emp.getNumber().equals(number))
            {
                 System.out.println("找到该员工,他的信息是:");
                 System.out.println("编号="+number);
                 System.out.println("名字是:"+emp.getName());
                 System.out.println("工资是:"+emp.getSal());
            }
        }
        
    }
    //显示所有员工信息
    public void showAllInfo()
    {
        for(int i=0;i<a1.size();i++)
        {
            Emp emp=(Emp)a1.get(i);
             System.out.println("编号="+emp.getNumber());
             System.out.println("名字是:"+emp.getName());
             System.out.println("工资是:"+emp.getSal());
        }
    }
    //修改员工工资
    public void updateSal(String number,float newsal)

    {
        for(int i=0;i<a1.size();i++)
        {
            Emp emp=(Emp)a1.get(i);
            if(emp.getNumber().equals(number))
            {
                emp.setSal(newsal);
                System.out.println("修改成功");
            }
        }
    }
    //删除某个员工
    public void delEmp(String number)
    {
        for(int i=0;i<a1.size();i++)
        {
            Emp emp=(Emp)a1.get(i);
            if(emp.getNumber().equals(number))
            {
                a1.remove(i);
            }
        }
    }
}
//雇员类
class Emp
{
    //员工号
    private String number;    
    private String name;
    private float sal;
    public Emp(String number,String name,float sal)
    {
        this.number=number;
        this.name=name;
        this.sal=sal;
    }
    public String getNumber() {
        return number;
    }
    public void setNumber(String number) {
        this.number = number;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public float getSal() {
        return sal;
    }
    public void setSal(float sal) {
        this.sal = sal;
    }
}