模拟银行操作

设计实现一个银行新用户现金业务办理程序,使其模拟新用户到银行办理现金存取业务时的场景。要求如下:

(1)有对于用户到来的欢迎动作、用户离开的提醒动作

(2)有用户的开户、存款和取款动作,在完成开户存款和取款操作后,要提示用户的帐户余额。

提示:

(1)声明Bank类,在Bank类中声明成员变量用于描述用户姓名,用户密码等相关信息,创建构造方法用于开户,创建静态方法用于打印欢迎语句,创建成员方法用于存款,取款等操作。

(2)在主类中创建对象,调用方法进行存取款等操作。

程序运行效果如下图所示,注意:姓名换成自己的真实姓名,功能实现不拘泥于下图,可以自由发挥,但是必须有开户,存款,取款操作。

复制代码
public class Bank {
    private String username;
    private String password;
    private double balance;

    public Bank(String username, String password, double initailbalance) {
        this.username = username;
        this.password = password;
        this.balance = initailbalance;
        welcome();
    }

    //静态方法打印欢迎语句
    public  static void welcome() {
        System.out.println("欢迎来到招商银行-------------------------------------");
    }

    //存款
    public void deposit(double amount) {
        if(amount > 0){
            balance+=amount;
            System.out.println(username+"您好,您的账户 已存入"+amount +"元,当前余额 " + balance+" 元");
        } else {
            System.out.println("存款金额必须大于0!");
        }
    }

    //取款
    public void withdrawal(double amount) {
        if(amount>0&&amount<=balance) {
            balance-=amount;
            System.out.println(username+"您好,您的账户 已取出"+amount+" 元,当前余额 " + balance +" 元");
        } else if(amount>balance){
            System.out.println("对不起,账户余额不足!");
        } else {
            System.out.println("取款金额必须大于0!");
        }
    }

    //开户成功提示
    public void welcome1() {
        System.out.println(username+" 开户成功,账户余额 ");
    }

    //密码错误
    public void mistake() {
        System.out.println("您输入的密码错误!");
    }
    //退出提示
    public void leave() {
        System.out.println("请携带还好随身财物,欢迎下次光临招商银行------------------------------------");
    }
}

import java.util.Scanner;

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

        // 打印欢迎语句
        Bank.welcome();

        //开户
        System.out.print("请输入您的姓名:");
        String username = scanner.nextLine();
        System.out.print("请输入您的密码:");
        String password = scanner.nextLine();
        System.out.print("请输入初始存款金额:");
        double initialBalance;
        while (!scanner.hasNextDouble()) {
            System.out.println("请输入有效的初始存款金额!");
            scanner.next();
        }
        initialBalance = scanner.nextDouble();
        scanner.nextLine();


        Bank userBank = new Bank(username, password, initialBalance);
        userBank.welcome1();

        // 用户选择
        int choice;
        do {
            System.out.println("\n请选择操作:");
            System.out.println("1. 存款");
            System.out.println("2. 取款");
            System.out.println("3. 退出");
            choice = scanner.nextInt();

            switch (choice) {
                case 1:
                    System.out.print("请输入存款金额:");
                    double depositAmount = scanner.nextDouble();
                    userBank.deposit(depositAmount);
                    break;
                case 2:
                    System.out.print("请输入取款金额:");
                    double withdrawAmount = scanner.nextDouble();
                    userBank.withdrawal(withdrawAmount);
                    break;
                case 3:
                    userBank.leave();
                    break;
                default:
                    System.out.println("无效选择,请重新选择!");
            }
        } while (choice != 3);



        scanner.close();
    }
}
相关推荐
bug菌10 分钟前
领导安排我一小时实现一个导出功能,我竟用@Excel注解两分钟搞定!🫠
java·后端·spring
bug菌11 分钟前
Swagger注解全攻略:一文搞懂 @ApiIgnore 的妙用!
java·后端·spring
bug菌13 分钟前
想确保用户输入有效吗?@Size注解是你的不二之选!
java·后端·spring
Mr.Java.1 小时前
Spring Boot MongoDB自定义连接池配置
java·spring boot·后端·mongodb
q567315231 小时前
用Dispatch库的爬虫程序爬取图片网站
开发语言·爬虫·python·scrapy
JIngJaneIL1 小时前
健身管理小程序|基于java微信开发健身管理小程序的系统设计与实现(源码+数据库+文档)
java·数据库·小程序·vue·毕业设计·论文·健身管理小程序
knightkkzboy1 小时前
《C语言中的“魔法盒子”:自定义函数的奇妙之旅》
c语言·开发语言·函数
Jelena技术达人1 小时前
深入解析:Python 爬取淘宝商品上下架接口
开发语言·python
菠萝崽.1 小时前
springboot中测试python脚本:ProcessBuilder
java·开发语言·spring boot·python·processbuilder
仙人掌_lz1 小时前
详解如何从零用 Python复现类似 GPT-4o 的多模态模型
开发语言·python·gpt·llm·gpt-4o·deepseek