文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

java实现人员信息管理系统的代码怎么写

2023-06-29 07:41

关注

今天小编给大家分享一下java实现人员信息管理系统的代码怎么写的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

实现增删改查.

java入门的练手小程序

java实现人员信息管理系统的代码怎么写

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));    }         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;    }         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;    } }

效果图:

java实现人员信息管理系统的代码怎么写

以上就是“java实现人员信息管理系统的代码怎么写”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网行业资讯频道。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯