1. 程式人生 > >java小demo---員工管理系統

java小demo---員工管理系統

最近開始自學java,在學到ArrayList的時候做了個員工管理系統來熟悉ArrayList的一部分操作。

此係統有5個功能:

1.新增員工:輸入員工編號,姓名,薪水

2.查詢員工:輸入員工編號進行查詢,如果找到員工就會顯示其資訊,否則給出沒找到的提示。

3.修改員工薪水:輸入員工姓名來找到要修改薪水的員工,再輸入修改過的薪水即可修改他的薪水。

4.刪除員工:輸入員工姓名來刪除員工資訊。

5.退出系統:正常退出java虛擬機器。

功能雖然不太多,但是原理是這樣,這個例子還是比較經典的。

廢話不多說,貼程式碼:

package com.test2;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.sql.SQLOutput;
import java.util.ArrayList;

public class ArrayListExercise {

        public static void main(String[] args) throws Exception{

            //建立EmpManage物件
            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:退出系統 ");

                String option = br.readLine();
                if(option.equals("1")){
                    System.out.println("請輸入員工編號:");
                    String empNu = br.readLine();
                    System.out.println("請輸入員工名字:");
                    String empName = br.readLine();
                    System.out.println("請輸入員工薪水:");
                    float empSal = Float.parseFloat(br.readLine());

                    Emp emp = new Emp(empNu,empName,empSal);
                    em.addEmp(emp);
                }
                else if(option.equals("2")){
                    System.out.println("請輸入要查詢員工編號:");
                    String empNu = br.readLine();

                    em.showInfo(empNu);
                }
                else if(option.equals("3")){
                    System.out.println("請輸入要修改薪水的員工姓名:");
                    String empName = br.readLine();
                    System.out.println("請輸入該員工修改後的薪水:");
                    float empSal = Float.parseFloat(br.readLine());

                    em.updateSal(empName,empSal);
                }
                else if(option.equals("4")){
                    System.out.println("請輸入要刪除員工姓名:");
                    String empName = br.readLine();

                    em.delEmp(empName);
                }
                else if(option.equals("5")){
                    //退出java虛擬機器
                    System.exit(0);
                }
            }
        }
}

//僱員管理類
class EmpManage{
    private ArrayList al = null;    //嘗試去掉null

    //建構函式
    public EmpManage(){
        al = new ArrayList();
    }

    //加入僱員
    public void addEmp(Emp emp){
        al.add(emp);
    }

    //顯示員工相關的資訊
    public void showInfo(String empNu){

        int count=0;
        //便利整個ArrayList
        for(int i=0;i<al.size();i++){
            //取出Emp物件
            Emp emp = (Emp)al.get(i);

            //比較編號
            if(emp.getEmpNu().equals(empNu)){
                count++;
                System.out.println("找到了他的資訊!");
                System.out.println("編號: " + empNu);
                System.out.println("姓名: " + emp.getName());
                System.out.println("薪資:" + emp.getSal());
            }
        }
        if(count==0){
            System.out.println("沒有找到這個傢伙!");
        }
    }

    //修改薪水
    public void updateSal(String name,float sal){

        int count=0;
        for(int i=0;i<al.size();i++){
            Emp emp =(Emp)al.get(i);

            if(emp.getName().equals(name)){
                count++;
                emp.setSal(sal);
            }
        }
        if(count==0){
            System.out.println("沒有找到這個傢伙啊,請先新增員工資訊才能修改薪水!");
        }
    }

    //刪除員工
    public void delEmp(String name){

        int count=0;
        for(int i=0;i<al.size();i++){
            Emp emp = (Emp)al.get(i);

            if(emp.getName().equals(name)){
                count++;
                al.remove(i);
            }
        }
        if(count==0){
            System.out.println("沒有找到這個傢伙,無法刪除,請先加入員工資訊!");
        }
    }
}

//僱員類
class Emp{
    public String getEmpNu() {
        return empNu;
    }

    public void setEmpNu(String empNu) {
        this.empNu = empNu;
    }

    public float getSal() {
        return sal;
    }

    public void setSal(float sal) {
        this.sal = sal;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Emp(String empNu,String name,float sal){
        this.empNu = empNu;
        this.name = name;
        this.sal = sal;
    }

    private String empNu;
    private float sal;
    private String name;

}