黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Java人員信息管理系統的代碼

Java人員信息管理系統的代碼

更新時間:2022-10-08 10:53:55 來源:動力節點 瀏覽1304次

1.Person類

package p1;?
public class Person {
?? ?// Person屬性
?? ?private int num;
?? ?private String name;
?? ?private String sex;
?? ?private int salary;?
?? ?public Person(int num, String name, String sex, int salary) {
?? ??? ?super();
?? ??? ?this.num = num;
?? ??? ?this.name = name;
?? ??? ?this.sex = sex;
?? ??? ?this.salary = salary;
?? ?}?
?? ?// 對Perosn操作的方法
?? ?public int getNum() {
?? ??? ?return num;
?? ?}?
?? ?public void setNum(int num) {
?? ??? ?this.num = num;
?? ?}?
?? ?public String getName() {
?? ??? ?return name;
?? ?}?
?? ?public void setName(String name) {
?? ??? ?this.name = name;
?? ?}?
?? ?public String getSex() {
?? ??? ?return sex;
?? ?}
?? ?public void setSex(String sex) {
?? ??? ?this.sex = sex;
?? ?}?
?? ?public int getSalary() {
?? ??? ?return salary;
?? ?}?
?? ?public void setSalary(int salary) {
?? ??? ?this.salary = salary;
?? ?}?
}

2.SysMenu類

package p1;
public class SysMenu {
    public static final String[] MENU = { "1.員工信息管理", "2.退出" };
    public static final String[] OPERATION_MENU = { "1.新增", "2.查看", "3.修改", "4.刪除", "5.返回" }; 
    public static void showMenu(String[] Menu) {
        for (int i = 0; i < Menu.length; i++)
            System.out.print(Menu[i] + "\t\t");
        System.out.println();
        System.out.println("---------------------------------------");
    }
}

3.SysInfo類

package p1;
import java.util.ArrayList;
import java.util.List;  
public class SysInfo {
    private static List informationList = new ArrayList();  
    // 獲取 informationList
    public static List getList() {
        return informationList;
    }
}

4.InformationService類

package p1;  
import java.util.List;  
public class InformationService {
    private List informationList = SysInfo.getList();  
    // 獲取信息列表
    public List getList() {
        return informationList;
    }  
    // 按編號查找信息
    public Person getPersonByNum(final int num) {
        if (num < 1) {
            System.out.println("編號錯誤");
            return null;
        }  
        for (int i = 0; i < informationList.size(); i++) {
            Person p = (Person) informationList.get(i);
            if (p.getNum() == num) {
                System.out.println("查找成功");
                return p;
            }
        }
        System.out.println("查找失敗");
        return null;
    }  
    //查看單一Person信息
    public void showAPerson(Person p)
    {
        System.out.println("編號\t\t姓名\t\t性別\t\t薪水");
        System.out.println(p.getNum()+ "\t\t" + p.getName() + "\t\t" + p.getSex() + "\t\t" + p.getSalary());
    }
    //show all Person
    public void showPerson() {
        System.out.println("編號\t\t姓名\t\t性別\t\t薪水");  
        List ps = getList();
        for (int i = 0; i < ps.size(); i++) {
            Person p = (Person) ps.get(i);
            System.out.println(p.getNum() + "\t\t" + p.getName() + "\t\t" + p.getSex() + "\t\t" + p.getSalary());
        }
    }       
    // 按名字查找信息
    public Person getPersonByName(final String name) {
        if (name == null)
            return null;
        for (int i = 0; i < informationList.size(); i++) {
            Person p = (Person) informationList.get(i);
            if (p.getName().equals(name)) {
                return p;
            }
        }
        return null;
    }     
    //檢查對象是否存在
    public boolean CheckExitByNum(int num)
    {
        for(int i=0;i<informationList.size();i++)
        {
            Person p = (Person)informationList.get(i);
            if(p.getNum()==num)
                return true;
        }
        return false;
    }     
    //save Person
    public void savePerson(Person p)
    {
        p.setNum(getPersonMaxInt()+1);
        informationList.add(p);
    }     
    // 查找最大編號
    public int getPersonMaxInt()
    {
        int max = 0;
        for(int i =0;i<informationList.size();i++)
        {
            Person p =(Person)informationList.get(i);
            if(max < p.getNum())
                max = p.getNum();
        }
        return max;
    }
}

5.SysRun類

package p1;  
import java.util.InputMismatchException;
import java.util.List;
import java.util.Scanner;  
public class SysRun {
    private List informationList = SysInfo.getList();
    private Scanner s = new Scanner(System.in);
    private InformationService is = new InformationService();  
    // 系統運行類
    public static void main(String[] args) {
        SysRun sys = new SysRun();
        sys.sysRun();
    }  
    public void sysRun() {
        System.out.println("啟動系統管理系統");
        boolean isExit = false;
        do {
            System.out.println("----------操作選項-------------");
            SysMenu.showMenu(SysMenu.MENU);
            // 獲取用戶輸入
            int operNum = getCorrONum(SysMenu.MENU);
            // 管理操作
            isExit = doManageNum(operNum);
        } while (!isExit);
        System.out.println("系統退出.");
    }  
    private boolean doManageNum(int operNum) {
        boolean isExit = false;
        switch (operNum) {
        case 1:
            is.showPerson();
            System.out.println("----------操作選項-------------");
            SysMenu.showMenu(SysMenu.OPERATION_MENU);
            // addPerson();//test
            System.out.println("輸入功能選擇:");
            int num = getVaildInt();
            doOperationNum(num);
            break;
        case 2:
            isExit = true;
            return isExit;
        }
        return isExit;
    }  
    // doOperationNum
    private void doOperationNum(int OperationNum) {
        // 增,查,修,刪,返回
        switch (OperationNum) {
        case 1:
            // add
            addPerson();
            is.showPerson();
            break;
        case 2:
            // 查看
            viewPerson();
            break;
        case 3:
            updatePerson();
            break;
        case 4:
            deletePerson();
            is.showPerson();
            break;
        case 5:
            break;
        }
    }  
    // 刪除Person
    private void deletePerson() {
        int num;
        // Person p;
        boolean isOk = false;
        System.out.println("請輸入要刪除信息的編號:");
        do {
            num = getVaildInt();
            isOk = is.CheckExitByNum(num);
            if (isOk == true) {
                System.out.println("編號信息查找成功。");
                informationList.remove(is.getPersonByNum(num));
            } else
                System.out.println("輸入編號有誤,請重新輸入:");
        } while (!isOk);  
    }  
    // 修改Person
    public void updatePerson() {
        System.out.println("請輸入要修改的信息編號:");
        boolean isOk = false;
        Person p;
        do {
            int num = getVaildInt();
            isOk = is.CheckExitByNum(num);
            if (isOk == true) {
                isOk = true;
                p = is.getPersonByNum(num);
                is.showAPerson(p);  
                System.out.println("請輸入名字:");
                String name = s.next();
                System.out.println("請輸入性別:");
                String sex = getVaildSex();
                System.out.println("請輸入工資:");
                int salary = getVaildInt();  
                p.setName(name);
                p.setSex(sex);
                p.setSalary(salary);
                is.showPerson();
            } else
                System.out.println("輸入要修改的編號有誤,請重新輸入:");
        } while (!isOk);  
    }  
    // 查看viewPerson()
    private void viewPerson() {
        System.out.println("請輸入要查看的人的信息編號:");
        Person p;
        boolean isOk = false;
        do {
            int num = getVaildInt();
            boolean NumIsOk = is.CheckExitByNum(num);
            if (NumIsOk == true) {
                p = is.getPersonByNum(num);
                is.showAPerson(p);
                isOk = true;
            } else {
                System.out.println("無此編號的人的信息,請重新輸入:");
            }
        } while (!isOk);  
    }  
    // addPerson()
    private void addPerson() {
        System.out.println("------------新增對象---------------");  
        boolean isOk = false;
        String name = null;
        do {
            System.out.println("請輸入名稱(且不能與現有的對象重名)");
            name = s.next();
            // 處理同名沖突
            if (is.getPersonByName(name) == null) {
                isOk = true;
            } else {
                System.out.println("該人信息已存在,請重新輸入!");
                s.next();
            }
        } while (!isOk);
        // other information
        System.out.println("請輸入其他信息...");
        System.out.println("sex:");
        String sex = getVaildSex();
        System.out.println("salary:");
        int salary = getVaildInt();
        // save
        is.savePerson(new Person(0, name, sex, salary));
    }  
    /* 輸入有效int */
    private int getVaildInt() {
        int num = 0;
        boolean isOk = false;
        do {
            try {
                num = s.nextInt();
                isOk = true;
            } catch (InputMismatchException e) {
                System.out.println("輸入錯誤,請重新輸入");
                s.next();
            }
        } while (!isOk);
        return num;
    }  
    /* 輸入有效sex信息 */
    private String getVaildSex() {
        String sex = null;
        boolean isOk = false;
        do {
            sex = s.next();
            if (sex.equals("f") || sex.equals("m"))
                isOk = true;
            else {
                System.out.println("sex輸入讓 有誤,請重新輸入");
            }
        } while (!isOk);
        return sex;
    }  
    public int getCorrONum(String[] targetMenu) {
        System.out.println("請輸入要選擇的操作:");  
        int inputNum = 0;
        boolean inputIsOk = false;
        do {
            try {
                inputNum = s.nextInt();
                System.out.println("輸入的是" + inputNum);
                if (inputNum >= 1 && inputNum <= targetMenu.length) {
                    inputIsOk = true;
                } else {
                    System.out.println("輸入錯誤,請重新輸入!");
                }
            } catch (InputMismatchException e) {
                System.out.println("輸入有誤,請重新輸入");
                // 若輸入出現異常,Scanner要丟棄上一次的輸入,否則 do-while會出現死循環
                s.next();
            }  
        } while (!inputIsOk);
        return inputNum;
    }  
}

效果圖:

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: jjzz日本老师 | 色聚网久久综合 | 最近播放的好看hd | 欧美久 | 亚洲高清视频在线观看 | 精选国产门事件福利在线观看 | 一级国产精品一级国产精品片 | 荡娃艳妇系列小说 | 免费在线中文字幕 | 香港经典三级成人xxx | 男人把女人狂躁的免费视频 | 国产字幕制服中文在线 | 欧洲日韩视频二区在线 | 日韩在线观看视频免费 | 美国一级黄色毛片 | 你懂的网站在线播放 | 韩国日本三级在线观看 | 可以免费观看的一级毛片 | 国产黄色大全 | 欧美一级视频高清片 | 中文字幕亚洲欧美 | 天天插天天干 | 国产成人综合高清在线观看 | 欧美日韩第一区 | 男女爽爽无遮拦午夜视频 | 中文有码视频 | 日韩久久中文字幕 | 久久橹| 老司机午夜在线视频免费 | 97色偷偷 | 夜夜揉揉日日人人视频 | 欧美综合中文字幕久久 | 亚洲免费福利视频 | 91视频免费网站 | 日本三级小视频 | 爽爽影院色黄网站在线观看 | 日韩.欧美.国产.无需播放器 | 在线www 天堂网在线 | 羞羞色在线 | 日日操夜夜 | 亚洲第一页视频 |