题目:银行的账户记录Account有账户的唯一性标识(11个长度的字符和数字的组合),用户的姓名,开户日期(Date),账户密码(六位的数字,可以用0开头),当前的余额。银行规定新开一个账户时,银行方面提供一个标识符、账户初始密码123456,客户提供姓名,开户时客户可以直接存入一笔初始账户金额,不提供时初始余额为0。定义该类,并要求该类提供如下方法:存款、取款、变更密码、可以分别查询账户的标识、姓名、开户日期、当前余额等信息。

代码:

import java.util.Date;
import java.util.Scanner;

public class Main{
    public static void main(String arg[]) {
        Scanner in=new Scanner(System.in);
        System.out.println("Welcome");
        Account person=new Account();
        person.setAccount();
        MAX_LOOP:
            while(true) {
                System.out.println("请选择服务项目:0.退出 1.存款 2.取款 3.变更密码 4.查询账户标识 5.查询姓名 6.查询开户日期 7.查询当前余额");
                int s=in.nextInt();
                MIN_LOOP:
                while(s>=0) {
                    if(s==0) {
                        System.out.println("谢谢使用!");
                        break MAX_LOOP;
                    }
                    else {
                        switch(s) {
                        case 1:person.Accountdeposit();break MIN_LOOP;
                        case 2:person.Accountwithdraw();break MIN_LOOP;
                        case 3:person.AccountsetPassword();break MIN_LOOP;
                        case 4:person.Accountsearchid();break MIN_LOOP;
                        case 5:person.Accountsearchname();break MIN_LOOP;
                        case 6:person.Accountsearchdate();break MIN_LOOP;
                        case 7:person.Accountsearchbalance();break MIN_LOOP;
                        }
                    }
            }
        
        }
    }
}

class Account{
    private String id;
    private String name;
    private String date;
    private int password=123456;
    private double balance=0;
    
    public void setDate() {
        Date date=new Date();
        this.date=date.toString();
    }
    
    public void setName(String name) {
        this.name=name;
    }
    
    public void setBalance(double money) {
        balance=money;
    }
    
    public void deposit(double money) {
        balance+=money;
        System.out.println("当前余额:"+balance);
    }
    
    public void withdraw(double money) {
        if(money<=balance) {
            balance-=money;
            System.out.println("请取款,当前余额:"+balance);
        }
        else {
            System.out.println("余额不足!当前余额:"+balance);
        }
    }
    
    public void setPassword(int password) {
        this.password=password;
        System.out.println("修改成功!");
    }
    
    public void setId(String id) {
        this.id=id;
    }
    
    public String getId() {
        return id;
    }
    
    public String getName() {
        return name;
    }
    
    public String getDate() {
        return date;
    }
    
    public double getBalance() {
        return balance;
    }
    
    public int getPassword() {
        return password;
    }
    
    public void setAccount() {
        Scanner in=new Scanner(System.in);
        System.out.println("银行方面提供11位长度的用户标识:");
        String id=in.next();
        setId(id);
        setDate();
        System.out.println("请输入姓名:");
        String name=in.next();
        setName(name);
        System.out.println("现在是否需要存入金额:需要请输入'是',不需要请输入'否'。");
        String feedback=in.next();
        if(feedback.equals("是")) {
            System.out.println("请输入存入金额:");
            double money=in.nextDouble();
            setBalance(money);
            System.out.println("开户成功!");
        }
        else {
            System.out.println("开户成功!");
        }
        System.out.println("账户标识:"+getId());
        System.out.println("用户姓名:"+getName());
        System.out.println("开户日期:"+getDate());
        System.out.println("初始密码:"+getPassword());
        System.out.println("账户余额:"+getBalance());
    }
    
    public void Accountdeposit() {
        Scanner in=new Scanner(System.in);
        System.out.println("请输入存款金额:");
        double a=in.nextDouble();
        deposit(a);
    }
    
    public void Accountwithdraw() {
        Scanner in=new Scanner(System.in);
        System.out.println("请输入取款金额:");
        double b=in.nextDouble();
        withdraw(b);
    }
    
    public void AccountsetPassword() {
        Scanner in=new Scanner(System.in);
        System.out.println("请输入密码:");
        int p=in.nextInt();
        setPassword(p);
    }
    
    public void Accountsearchid() {
        System.out.println("当前账户标识:"+getId());
    }
    
    public void Accountsearchname() {
        System.out.println("用户姓名:"+getName());
    }
    
    public void Accountsearchdate() {
        System.out.println("开户日期:"+getDate());
    }
    
    public void Accountsearchbalance() {
        System.out.println("当前余额:"+getBalance());
    }
}

运行结果:

银行的账户记录Account系统相关推荐

  1. 【计算机毕业设计】305银行账目账户管理系统

    一.系统截图(需要演示视频可以私聊) 摘  要 传统办法管理信息首先需要花费的时间比较多,其次数据出错率比较高,而且对错误的数据进行更改也比较困难,最后,检索数据费事费力.因此,在计算机上安装银行账目 ...

  2. account表里有什么 银行_模拟一个银行账户类Account,账户类中包括所有者、账号、余额、账户总数、存款、取款等信息。_学小易找答案...

    [单选题]廉价磁盘冗余阵列RAID利用冗余技术实现高可靠性,其中RAID1的磁盘利用率为() . [简答题]与直流调速相比,交流调速有何优点? [论述题]方法 [单选题]以<老子注>一书驰 ...

  3. 定义银行账户类Account,有属性:卡号cid,余额balance,所属用户Customer 银行账户类Account有方法: (1)getInfo(),返回String类型,返回卡的详细信息

    //定义银行账户类Account,有属性:卡号cid,余额balance,所属用户Customer //银行账户类Account有方法: //(1)getInfo(),返回String类型,返回卡的详 ...

  4. 3-35 声明银行账户类Account,成员变量包括账号、储户姓名、开户时间、身份证号码、存款余额等账户信息,成员方法包括开展户、存款、取款、查询(余额、明细)、销户等操作。

    1.实验题目: 3-35 声明银行账户类Account,成员变量包括账号.储户姓名.开户时间.身份证号码.存款余额等账户信息,成员方法包括开展户.存款.取款.查询(余额.明细).销户等操作. 2.实验 ...

  5. 声明银行账户类 java_编写Java程序,使用ThreadLocal类,项目中创建账户类 Account,类中包括账户名称name、 ThreadLocal 类的引用变量amount,表示存款...

    查看本章节 查看作业目录 需求说明: 某用户共有两张银行卡,账户名称相同,但卡号和余额不同.模拟用户使用这两张银行卡进行消费的过程,并打印出消费明细 实现思路: 项目中创建账户类 Account,类中 ...

  6. 关于如何防范Ⅱ、Ⅲ类银行结算账户风险

    近日×××支付结算司发布<关于加强II.III类银行结算账户风险防范有关事项的通知>(以下简称II.III类户).通知要求: 一.全面开展风险排查.银行业金融机构对网上银行.手机银行.直销 ...

  7. 银行智能风险防控系统(第二版)

    需求工程5组第一阶段需求文档 目录 1.引言... 1 1.1项目目的.... 1 1.2项目范围.... 2 1.3 项目概览.... 3 2.项目总体描述... 3 2.1产品前景.... 3 2 ...

  8. 用C++设计一个Bank类,实现银行某账户的资金往来账目管理。

    用C++设计一个Bank类,实现银行某账户的资金往来账目管理.(主要分为创建用户,存钱,取钱,记录.) 第一步,C++标准库 第二步,创建一个Bank类,其中包含七个成员函数和四个私有成员变量. 第三 ...

  9. mysql select count 5万条数据很慢_mysql亿级数据数据库优化方案测试银行交易流水记录的查询...

    点击上方△蓝字关注我们 带你征服编程和泡妞两座大山 对MySQL的性能和亿级数据的处理方法思考,以及分库分表到底该如何做,在什么场景比较合适? 比如银行交易流水记录的查询 限盐少许,上实际实验过程,以 ...

最新文章

  1. 如何用Jupyter Notebook制作新冠病毒疫情追踪器?
  2. 新书上市 | 新视角来了:《用户体验四维度》
  3. 建房子之前先挖地基 - Java BlockingQueue理解
  4. GitHub 仓库按大小排序
  5. UVA 11021 - Tribles(概率递推)
  6. 怎么从转移特性曲线上看dibl_「科普向」这篇让你快速搞懂IGBT的静态特性
  7. ext get id js_Ext.getCmp(“id”) 简单应用 | 学步园
  8. iOS 后台语音播报功能开发过程中的那些坑
  9. Linux中查看socket进程状态
  10. C语言:输入四个数a,b,c,d,将这四个数由小到大排序
  11. 对抗样本生成算法-FGSM、I-FGSM、ILCM、PGD
  12. cad尺寸标注快捷键_CAD软件中如何修改设置CAD标注尺寸的值?
  13. centos7.4源码安装nginx-1.16.1 及NGINX最全配置 缓存缩略图4层转发
  14. java基于ssm的校车车辆调度管理系统
  15. 程序猿麒麟臂打造之路(健身二)
  16. red hat 系统下载
  17. assign()函数的使用
  18. 运筹学基础【五】 之 线性规划
  19. 分类-动态渲染左侧的一级分类列表
  20. 《计算机组成与系统结构(第二版) 裘雪红 李伯成 西安电子科技大学出版社》课后习题答案(带解析)(一)

热门文章

  1. Oracle表的管理命令
  2. 表的概念(Oracle)
  3. 压缩ppt大小的方法
  4. Vue.js 使用 vue-video-player 视频播放器(最全面)
  5. 推荐有关微信开发的十个开源项目
  6. 算法设计与分析实验课(2)
  7. oracle 修改时间字段的格式
  8. 判断单链表是否存在环,判断两个链表是否相交问题详解(转)
  9. 什么是敏捷性能合弄结构(APH)?
  10. Springboot中上一个定时任务没执行完,是否会影响下一个定时任务执行分析及结论