ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

ATM机案例3之菜单操作类(五)

2021-11-21 20:00:39  阅读:108  来源: 互联网

标签:菜单 scanner ATM System break 案例 println id out


ATM机案例3之菜单操作类(五)

所有目录
image

Application(菜单操作类)

点击查看代码
import java.util.Scanner;

public class Application {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        systemMenu(scanner);
    }


    //系统菜单界面
    public static void systemMenu(Scanner scanner) {
        System.out.println("欢迎使用ATM机:\n1、登录\t2、注册\t0、退出");
        int choose = scanner.nextInt();
        switch (choose) {
            case 0:
                System.out.println("退出成功!");
                break;
            case 1:
                login(scanner);
                break;
            case 2:
                register(scanner);
                break;
            default:
                System.out.println("非法输入,请重试!");
                systemMenu(scanner);
        }
    }

    public static void login(Scanner scanner) {
        //1、登陆
        AccountDAO accountDAO = new AccountDAO();

        System.out.println("请输入账号id:");
        int accountid = scanner.nextInt();
        System.out.println("请输入账号密码:");
        String accountpassword = scanner.next();

        if (accountDAO.login(accountid, accountpassword)) {
            mainMenu(scanner,accountid);
        } else {
            System.out.println("登录失败!\n请检查账号和密码!");
            systemMenu(scanner);
        }
    }

    public static void register(Scanner scanner) {
        //2、注册
        AccountDAO accountDAO = new AccountDAO();
        System.out.println("请设置账号id:");
        int userid = scanner.nextInt();
        if (accountDAO.judgeIsNull(userid)) {
            System.out.println("请设置账号用户名:");
            String username = scanner.next();
            System.out.println("请设置账号密  码:");
            String userpassword = scanner.next();
            System.out.println("请设置性  别:");
            String usergender = scanner.next();
            accountDAO.createAccount(userid,username,userpassword,usergender);
            systemMenu(scanner);
        } else {
            System.out.println("该账号id已存在!请重试");
            register(scanner);
        }
    }


    //主菜单界面,携带身份信息
    public static void mainMenu(Scanner scanner,int id) {

        ShowInfoDAO showInfoDAO = new ShowInfoDAO();
        AccountDAO accountDAO = new AccountDAO();
        CardDAO cardDAO = new CardDAO();
        System.out.println("\t\t\t主菜单:\n1、查看银行卡信息\n2、转账\n3、注销银行卡\n4、注销账户\n5、退出系统");
        int choose = scanner.nextInt();
        switch (choose) {
            case 1:
                //展示查询信息
                showInfoDAO.show(id);
                mainMenu(scanner, id);
                break;
            case 2:
                //2、转账功能
                System.out.println("请输入汇款账户:");
                int outputID = scanner.nextInt();
                if (CardDAO.judge(outputID)) {
                    System.out.println("汇款账户不存在!请重试!");
                    mainMenu(scanner, id);
                    break;
                }
                System.out.println("请输入转账金额:");
                double money = scanner.nextDouble();
                System.out.println("请输入收款账户:");
                int inputID = scanner.nextInt();
                if (CardDAO.judge(inputID)) {
                    System.out.println("收款账户不存在!请重试!");
                    mainMenu(scanner, id);
                    break;
                }
                double outBalance = CardDAO.findByNumber(outputID).getBalance();
                double inBalance = CardDAO.findByNumber(inputID).getBalance();
                cardDAO.outputMoney(money,outputID);
                cardDAO.inputMoney(money, inputID);
                System.out.printf("汇款卡号%d:\t%f¥》》》卡号%d:\t%f¥\n",outputID,outBalance,outputID,outBalance-money);
                System.out.printf("收款卡号%d:\t%f¥》》》卡号%d:\t%f¥\n",inputID,inBalance,inputID,inBalance+money);
                mainMenu(scanner,id);
                break;
            case 3:
                //3、注销银行卡
                System.out.println("请输入要删除的卡号:");
                int deleteCardNumber = scanner.nextInt();
                showInfoDAO.deleteShowInfo(deleteCardNumber);
                mainMenu(scanner,id);
                break;
            case 4:
                //4、注销账户
                System.out.println("是否确定销户?\n1、确认\t2、取消");
                int sure = scanner.nextInt();
                if (sure == 1) {
                    accountDAO.deleteAccount(id);
                    mainMenu(scanner,id);
                } else if (sure == 2) {
                    mainMenu(scanner, id);
                } else {
                    System.out.println("非法输入!请重试!");
                    mainMenu(scanner, id);
                }
                break;
            case 5:
                //5、退出系统
                systemMenu(scanner);
                break;
            default:
                System.out.println("非法输入!请重新输入!");
                mainMenu(scanner,id);
                break;
        }
    }
}

标签:菜单,scanner,ATM,System,break,案例,println,id,out
来源: https://www.cnblogs.com/black-jay-blogs/p/15585614.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有