作Java业

40 阅读1分钟
  • 第一次Java实验


    public static void main(String[] args) {
        String username[] = {"w001","w002","w003"};
        int password[] = {123,456,789};
        double money[] = {100.0,200.0,300.0};
        int i,t,team,pass;
        String new_pass = " ";
        double edit_money=0;
        i=team=pass=0;
        Scanner scanner = new Scanner(System.in);

        System.out.println("请输入账号");
        String user = scanner.next();
        while (team<5){
            for (i=0;i<username.length;i++){
                if (username[i].equals(user)){
                    System.out.println("请输入密码!");
                    new_pass = scanner.next();
                    team=5;
                    break;
                }
            }
            if(team != 5){
                team++;
                i = 0;
                System.out.println("账号错误,请重新输入");
                user = scanner.next();
            }else{
                break;
            }

        }
        while(true){
            if(Integer.parseInt(new_pass) == password[i]){
                System.out.println("登录成功!");
                break;
            }
            System.out.println("密码错误,请重新输入");
            new_pass = scanner.next();

        }
        while (true){
            System.out.println("1取款 2查询余额 3存钱 4退出程序");
            t = scanner.nextInt();
            if (t ==1){
                System.out.println("请输入取款数目");
                edit_money = scanner.nextDouble();
                money[i] =  money[i] - edit_money;
                System.out.println("账户余额:"+money[i]);
            }else if(t == 2){
                System.out.println("账户余额:"+money[i]);
            }else if(t == 3){
                System.out.println("请输入存款数额");
                edit_money = scanner.nextDouble();
                money[i] = money[i] + edit_money;
                System.out.println("账户余额:"+money[i]);
            }else if(t == 4){
                System.exit(-1);
            }
        }
    }
  • 第二次实验
    static String username[] = {"admin", "w001", "w002", "w003"};
    static int power[] = {1,0,0,0};
    static int password[] = {123,456,789,111};
    static double money[] = {100.0,200.0,300.0,0};
    public static void main(String[] args) {
        Login();
    }
    public static void Login(){
        Scanner scanner = new Scanner(System.in);
        System.out.println("输入账号:");
        String user = scanner.next();
        for (int i=0;i<username.length;i++){
            if (username[i].equals(user)){
                login_pass(i);
            }
        }
        System.out.print("账号错误,请重新");
        Login();

    }

    private static void login_pass(int i) {
        int pass = 0;
        String new_pass = " ";
        Scanner scanner = new Scanner(System.in);
        while(true){
            System.out.println("输入密码: ");
            new_pass = scanner.next();
            try{
                pass =Integer.parseInt(new_pass);
            }catch (NumberFormatException e){
                System.out.print("密码请输入数字!");
                System.out.print("请重新");
                login_pass(i);
            }
            if(pass == password[i]){
                if(power[i] == 1){
                    System.out.println("欢迎你管理员");
                    admin();
                }else{
                    System.out.println("登录成功!");
                    caozou(i);
                }

            }
            System.out.print("密码错误!!!");
            System.out.print("请重新");
            login_pass(i);


        }
    }

    public static void Logout(){
        Scanner scanner = new Scanner(System.in);
        String user = " ";
        String error = " ";
        System.out.println("请输入要注销的用户");
        user = scanner.next();
        System.out.println("确定删除吗 yes no");
        error = scanner.next();
        if (error.equals("yes")){
            for (int i = 0; i < username.length; i++) {
                if (username[i].equals(user)){
                    username[i] = "已注销";
                    System.out.println("注销成功!");
                    admin();
                    break;
                }
            }
        }else{
            admin();
        }

    }
    public static void admin(){
        Scanner scanner = new Scanner(System.in);
        int t = 0;
        while(true){
            System.out.println("请输入 1添加用户 2注销用户 3退出系统 4查询用户信息 5退出登录");
            t = scanner.nextInt();
            switch(t){
                case 1:
                    add();
                    break;
                case 2:
                    Logout();
                    break;
                case 3:
                    System.exit(-1);
                    break;
                case 4:
                    List();
                    break;
                case 5:
                    Login();
                    break;
                default:
                    System.out.println("输入错误,请重新输入!!");
                    break;
            }
        }

    }

    public static void add() {
        money = add_money();
        username = add_user();
        password = add_pass();
        power = add_power();
        System.out.println("添加成功!!");
    }

    private static void List() {
        String power_new = " ";
        for (int i = 0; i < money.length; i++) {
            if (power[i] == 0){
                power_new = "普通用户";
            }else{
                power_new = "管理员用户";
            }
            if (!username[i].equals("已注销")){
                System.out.println("用户名:"+username[i]+' '+"密码:"+password[i]+' '+"账户余额:"+money[i]+' '+power_new);
            }

        }
    }

    public static String[] add_user(){
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入新用户账号!");
        String new_name = scanner.next();
        String[] newarr_user = new String[username.length+1];
        for (int j = 0; j <= username.length-1; j++) {
            newarr_user[j]  =  username[j];
        }
        newarr_user[username.length]  =  new_name;
        username = newarr_user;
        return username;
    }
    public static int[] add_pass(){
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入新用户密码!");
        int new_pass = scanner.nextInt();
        int[] newarr_pass = new int[password.length+1];
        for (int j = 0; j <= password.length-1; j++) {
            newarr_pass[j]  =  password[j];
        }
        newarr_pass[password.length]  =  new_pass;
        password = newarr_pass;
        return password;
    }
    public static double[] add_money(){
        Scanner scanner = new Scanner(System.in);
        double[] newarr_money = new double[money.length+1];
        for (int j = 0; j <= money.length-1; j++) {
            newarr_money[j] =  money[j];
        }
        newarr_money[money.length] =  0;
        money = newarr_money;
        return money;
    }
    public static int[] add_power(){
        Scanner scanner = new Scanner(System.in);
        int[] newarr_power = new int[power.length+1];
        for (int j = 0; j <= power.length-1; j++) {
            newarr_power[j] =  power[j];
        }
        newarr_power[power.length] =  0;
        power = newarr_power;
        return power;
    }
    public static void caozou(int i){
        Scanner scanner = new Scanner(System.in);
        int t = 0;
        double edit_money=0;
        while (true){
            System.out.println("1取款 2查询余额 3存钱 4转账 5重新登录 6修改密码 7退出系统");
            t = scanner.nextInt();
            switch (t){
                case 1:
                    withdraw(i);    break;
                case 2:
                    inquiry(i);     break;
                case 3:
                    deposit(i);     break;
                case 4:
                    transfer(i);    break;
                case 5:
                    Login();        break;
                case 6:
                    edit_user(i);   break;
                case 7:
                    System.exit(-1);
                    break;
                default:
                    System.out.println("请重新输入!!");
                    break;
            }
        }
    }
    public static int verify(String str){
        int new_int = 0;
        try{
            new_int =Integer.parseInt(str);
        }catch (NumberFormatException e){
            return -1;

        }
        return new_int;
    }
    private static void edit_user(int i) {
        Scanner scanner = new Scanner(System.in);
        String new_pass = " ";
        int pass = 0;
        System.out.println("输入原密码!");
        new_pass = scanner.next();
        pass = verify(new_pass);
        if(pass != -1){
            if (pass == password[i]){
                while(true){
                    System.out.println("请输入新密码!!");
                    new_pass = scanner.next();
                    pass = verify(new_pass);//验证输入是否为数字
                    if (pass != -1){
                        password[i] = pass;
                        caozou(i);
                        break;
                    }
                    System.out.print("请输入数字,重新");
                }

            }
        }else{
            System.out.print("请输入数字,重新");
            edit_user(i);
        }
        System.out.print("密码错误!重新");
        edit_user(i);
    }

    public static void  withdraw(int i){//取款
        Scanner scanner = new Scanner(System.in);
        double edit_money=0;
        System.out.println("请输入取款数目");
        edit_money = scanner.nextDouble();
        if (edit_money > money[i]){
            System.out.println("您的余额不足,请重新输入");
            withdraw(i);
        }
        money[i] =  money[i] - edit_money;
    }
    public static void deposit(int i){//存款
        Scanner scanner = new Scanner(System.in);
        double edit_money=0;
        System.out.println("请输入存款数额");
        edit_money = scanner.nextDouble();
        money[i] = money[i] + edit_money;
        System.out.println("账户余额:"+money[i]);
    }
    public static void inquiry(int i){//查询
        System.out.println("账户余额:"+money[i]);
    }
    public static void transfer(int i){
        Scanner scanner = new Scanner(System.in);
        double edit_money=0;
        int t = 0;
        System.out.println("请输入转账数目");
        edit_money = scanner.nextDouble();
        if (edit_money > money[i]){
            System.out.println("您的余额不足,请重新输入");
            withdraw(i);
        }
        while (t != 1){
            System.out.println("请输入转账账号:");
            String user = scanner.next();
            for (int j = 0; j < username.length; j++) {
                if (username[j].equals(user)){
                    money[j] += edit_money;
                    t = 1;
                    break;
                }
            }
        }
    }