static

遍历、增加、修改数组元素等需要先判定数组元素不为空
static 运用:
/创建员工数组
static Employee[] emps = new Employee[5];
//创建用户数组
static User[] users = new User[5];
static {
    //初始化3个员工对象并存放数组
    emps[0] = new Employee(01, 9999, "张三");
    emps[1] = new Employee(02, 8888, "李四");
    emps[2] = new Employee(03, 6666, "王五");
    //初始化2个用户对象并存放数组
    users[0] = new User("admin", "123456");
    users[1] = new User("lzy", "lzy123456");
}

增加数组元素

public  static void addEmps(int num,String name,double salary){
    for (int i = 0; i <emps.length ; i++) {
        if(emps[i]==null){
            emps[i] = new Employee(num,salary,name);
            break;
        }
    }

}
------------------------------------------------------------------------
/**
 * Created by Administrator on 2018/12/11.
 * 用户类
 */
public class User {
    //属性
    private String useName;     //用户名
    private String passWord;    //密码

    public User(String useName, String passWord) {
        this.useName = useName;
        this.passWord = passWord;
    }

    public String getUseName() {
        return useName;
    }

    public void setUseName(String useName) {
        this.useName = useName;
    }

    public String getPassWord() {
        return passWord;
    }

    public void setPassWord(String passWord) {
        this.passWord = passWord;
    }
}
-------------------------------------------------------------------
/**
 * Created by Administrator on 2018/12/11.
 * 员工类
 */

public class Employee {
    //属性
    private int num;    //员工号
    private String name;    //员工姓名
    private double salary;  //员工薪水

    public Employee(int num, double salary, String name) {
        this.num = num;
        this.salary = salary;
        this.name = name;
    }

    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 double getSalary() {
        return salary;
    }

    public void setSalary(double salary) {
        this.salary = salary;
    }
}

--------------------------------------------------

/**
 * Created by Administrator on 2018/12/11.
 * 操作类
 */
public class Operate {
    //创建员工数组
    static Employee[] emps = new Employee[5];
    //创建用户数组
    static User[] users = new User[5];
    static {
        //初始化3个员工对象并存放数组
        emps[0] = new Employee(01, 9999, "张三");
        emps[1] = new Employee(02, 8888, "李四");
        emps[2] = new Employee(03, 6666, "王五");
        //初始化2个用户对象并存放数组
        users[0] = new User("admin", "123456");
        users[1] = new User("lzy", "lzy123456");
    }

    //方法1、验证用户名和密码
    public boolean usePaw(String Admin,String paw){
        for (int i = 0; i < users.length; i++) {
            if (users[i]!=null) {
                if (Admin.equals(users[i].getUseName()) && paw.equals(users[i].getPassWord())) {
                    return true;
                }
            }
        }
        return false;
    }

    //方法2.1、遍历数组元素,查询员工信息
    public void show(){
        for(Employee emp:emps){
            if (emp!=null) {
                System.out.println(emp.getName() +"\t"+ emp.getNum() +"\t"+ emp.getSalary());
            }
        }
    }

    //2.2、根据工号查询员工信息
    public void numShow(int emp){
        for (int i = 0; i < emps.length; i++) {
            if (emps[i]!=null) {
                if (emps[i].getNum() == emp) {
                    System.out.println(emps[i].getName() + "\t" + emps[i].getNum() + "\t" + emps[i].getSalary());
                    System.out.println();
                    break;
                }else if(i==emps.length-1){
                    System.out.println("未找到该员工!");
                }
            }
        }
    }

    //方法2.3、添加账户和员工
    public static void addUser(String user,String pwd){
        for (int i = 0; i <users.length ; i++) {
            if(users[i]==null){
                users[i].setUseName(user);
                users[i].setPassWord(pwd);
                break;
            }
        }
    }
    public  static void addEmps(int num,String name,double salary){
        for (int i = 0; i <emps.length ; i++) {
            if(emps[i]==null){
                emps[i] = new Employee(num,salary,name);
                break;
            }
        }

    }


    //方法2.4、修改员工工资
    public void alter(String name,Double moneys){
        for (int i = 0; i <emps.length ; i++) {
            if(emps[i]!=null){
                if(emps[i].getName().equals(name)){
                    emps[i].setSalary(moneys);
                    emps[i].getSalary();
                    break;
                }
            }
        }
    }

    //方法2.5、删除员工
    public void delete(String name) {
        for (int i = 0; i < emps.length; i++) {
            if (emps[i]!=null) {
                if (emps[i].getName().equals(name)) {
                    emps[i] = null;
                    break;
                }
            }
        }
    }

}

---------------------------------------------

import java.util.Scanner;

/**
 * Created by Administrator on 2018/12/11.
 * 测试类
 */
public class Test {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        Operate ope=new Operate();

        while(true) {
            //登录菜单
            System.out.println("请输入用户名:");
            String user=input.next();
            System.out.println("请输入密码:");
            String paw=input.next();
            boolean get=ope.usePaw(user,paw);
            if (get) {
                do {
                    //主菜单
                    System.out.println("1、查询所有员工信息");
                    System.out.println("2、根据工号查询员工信息");
                    System.out.println("3、添加员工");
                    System.out.println("4、修改员工工资");
                    System.out.println("5、删除员工");
                    System.out.println("6、退出");
                    System.out.println("请选择:");
                    int choose = input.nextInt();
                    switch (choose) {
                        case 1:
                            //查询所有员工信息
                            ope.show();
                            break;
                        case 2:
                            //根据工号查询员工信息
                            System.out.println("请输入需要查询的员工工号:");
                            int num = input.nextInt();
                            ope.numShow(num);
                            break;
                        case 3:
                            //添加员工
                            System.out.println("请输入添加员工的工号:");
                            int num1 = input.nextInt();
                            System.out.println("请输入添加员工的姓名:");
                            String name1 = input.next();
                            System.out.println("请输入添加员工的工资:");
                            double money1 = input.nextDouble();
                            ope.addEmps(num1,name1,money1);

                            break;
                        case 4:
                            //修改员工工资
                            System.out.println("请选择需要更改工资的员工姓名:");
                            String nameAlter=input.next();
                            System.out.println("请输入更改后的工资:");
                            double moneyAlter=input.nextDouble();
                            ope.alter(nameAlter,moneyAlter);
                            break;
                        case 5:
                            //删除员工
                            System.out.println("请输入需要删除的员工姓名:");
                            String name=input.next();
                            ope.delete(name);
                            break;
                        case 6:
                            System.out.println("退出");
                            return;
                    }
                } while (true);
            } else {
                System.out.println("用户名或者密码不正确!是否重新登陆(y/n)");
                String choose = input.next();
                if(choose!="y") {
                    return;
                }
            }
        }
    }
}

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值