栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

大学大作业--银行系统简易版java,创建账户,登录账户,输入密码,密码验证,查询余额,随机账户,

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

大学大作业--银行系统简易版java,创建账户,登录账户,输入密码,密码验证,查询余额,随机账户,

实现以下功能:

1.账户开户:创建账户,输入密码,获得随机卡号;

2.账户登录:查询余额功能已完成,其余功能类似,节约时间没写

代码展示:

一共创建两个类:Account类(创建账户对象),ATMSystem类(main方法实现功能)

Account类代码如下:

**
 * 用户对象构建
 *
 * @author 30115
 */
public class Account {
    private String cardId;
    private String userName;
    private String passWord;
    private String money;
    private String quotMoney;

    public Account() {
    }

    public Account(String cardId, String userName, String passWord, String money, String quotMoney) {
        this.cardId = cardId;
        this.userName = userName;
        this.passWord = passWord;
        this.money = money;
        this.quotMoney = quotMoney;
    }

    public String getCardId() {
        return cardId;
    }

    public void setCardId(String cardId) {
        this.cardId = cardId;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getPassWord() {
        return passWord;
    }

    public void setPassWord(String passWord) {
        this.passWord = passWord;
    }

    public String getMoney() {
        return money;
    }

    public void setMoney(String money) {
        this.money = money;
    }

    public String getQuotMoney() {
        return quotMoney;
    }

    public void setQuotMoney(String quotMoney) {
        this.quotMoney = quotMoney;
    }
}

 ATMSystem类代码如下:

import java.util.ArrayList;
import java.util.Random;
import java.util.Scanner;


public class ATMSystem {
    public static void main(String[] args) {
//定义一个集合
        ArrayList accounts = new ArrayList<>();
//显示系统信息
        while (true) {
            System.out.println("======ATM=====");
            System.out.println("1.账户登录");
            System.out.println("2.账户开户");

            Scanner sc = new Scanner(System.in);
            System.out.println("输入命令");
            int command = sc.nextInt();

            switch (command) {
                case 1 ->
                        //登录
                        login(accounts, sc);
                case 2 ->
                        //开户
                        register(accounts, sc);
                default -> System.out.println("错误命令");
            }
        }
    }

    
    private static void login(ArrayList accounts, Scanner sc) {
        System.out.println("==========登录页面========");
        //判断事故否存在账户
        if (accounts.size() == 0) {
            System.out.println("无账号,先开户");
            return;
        }

        //登录操作
        System.out.println("输入卡号");
        String cardId = sc.next();
        //判断账户是否存在
        Account acc = getAccountByCardId(accounts, cardId);
        if (acc == null) {

            System.out.println("没有此账号!");
        }
        System.out.println("输入密码");
        String passWord = sc.next();

        if (acc.getPassWord().equals(passWord)) {
            System.out.println("登录成功!");

            //进入具体操作页面
            displayUserSpecificInformation(accounts, cardId, sc);
        } else {
            System.out.println("密码错误!");
        }

    }

    
    private static void displayUserSpecificInformation(ArrayList accounts,String cardId,Scanner sc) {
        System.out.println("=========用户信息=======");
        System.out.println("输入命令:");
        System.out.println("1.查询余额");
        System.out.println("2.转账");
        System.out.println("3.注销");
        System.out.println("4.改密码");
        int command = sc.nextInt();
        switch (command) {
            case 1 ->
                    //查询余额
                    checkBalances(accounts, cardId);
            case 2 ->
                    //转账
                    System.out.println("转账");
            case 3 ->
                    //注销
                    System.out.println("注销");
            case 4 ->
                    //注销
                    System.out.println("改密码");
            default -> System.out.println("错误命令");
        }
    }

    
    private static void checkBalances(ArrayList accounts,String cardId) {
        
        System.out.println("查询余额");
        //得到卡号,调用卡号查账户功能,获得账户,然后获得余额,为展示功能,方便直接存入10000
        getAccountByCardId(accounts, cardId).setMoney("10000");
       //获得余额
        System.out.println(getAccountByCardId(accounts, cardId).getMoney());

    }

    
    public static void register(ArrayList accounts, Scanner sc) {
        System.out.println("==========开户页面==========");
        Account a = new Account();
        System.out.println("你的名字");
        String userName = sc.next();
        System.out.println("请输入密码");
        String passWord = sc.next();
        System.out.println("请再次输入密码");
        String passWord_1 = sc.next();
        if (passWord.equals(passWord_1)) {
            //将数据放入对象
            a.setPassWord(passWord);
            a.setUserName(userName);
        } else {
            System.out.println("密码不一致");
        }

        System.out.println("输入每日限额");
        String quotMoney = sc.next();
        a.setQuotMoney(quotMoney);

        //随机生成8位随机账户,不重复,写个独立方法
        String cardId = getRandomCardId(accounts);
        a.setCardId(cardId);


        //将账户放进集合
        accounts.add(a);
        System.out.println("账户创建成功" + "卡号:" + cardId);

    }

    
    private static String getRandomCardId(ArrayList accounts) {
        Random ran = new Random();
        while (true) {
            String cardId = "";

//产生8位随机数
            for (int i = 0; i < 8; i++) {
                cardId += ran.nextInt(9);
            }

            Account acc = getAccountByCardId(accounts, cardId);
            if (acc == null) {
                return cardId;
                //返回可以用的卡号
            }
        }

    }

    
    private static Account getAccountByCardId(ArrayList accounts, String CardId) {
        for (Account acc : accounts) {
            if (acc.getCardId().equals(CardId)) {
                return acc;
            }
        }
        return null;
    }
}

完毕

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/995615.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号