m0_68564583 2022-04-04 17:21 采纳率: 100%
浏览 69
已结题

java刚刚入门,这个真的不会

★定义银行账号类 Bank,包含属性:银行卡卡号(cardnumber), 银行卡 密码(password) (6位),银行卡余额(balance), 是否登录成功

★实现银行卡卡号的登录方法, 卡号和密码匹配登录成功

★实现银行卡 卡号的查询余额方法,登录成功后可以查询

★实现银行卡 卡号取款方法,取完后显示余额

★实现银行卡转账业务, 向另外一张卡转账

★主类:创建一个卡号,6225 8888 6666 3333 222, 密码123456, 余额500,先查询余额,再取2000出来,显示余额:向另外-张卡(卡 号6225 888 666 3333 111,密码654321,余额1000, )转账500;最后登录1111卡,查询是否到账

  • 写回答

2条回答 默认 最新

  • 关注
    
    import java.io.Serializable;
    import java.util.HashMap;
    import java.util.Map;
    import java.util.Scanner;
    
    /*
     * 1. 客户登录或注册用户 2. 查询个人账户余额 3. 取入钱款交易 4. 存入钱款交易 5. 转账交易 6. 退出账户 7. 注销账户 
     * 要求:1.Switch语句,循环语句,集合,继承,构造方法,抽象方法,
     * super,this,Scanner,静态方法等的运用、呈现。2.添加注释
     * */
    public class BankTest {
    
        public static void main(String[] args) {
            int num;
            Scanner input = new Scanner(System.in);
            UserData u=null;
            Map<String,UserData> userList = new HashMap<String,UserData>();
            while(true) {
                System.out.println("***************中国银行系统***************\n");
                System.out.println("1、注册                                                                                                  *\n");
                System.out.println("2、登录                                                                                                  *\n");
                System.out.println("3、查询个人账户                                                                                  *\n");
                System.out.println("4、存款                                                                                                   *\n");
                System.out.println("5、取钱                                                                                                  *\n");
                System.out.println("6、转账                                                                                                  *\n");
                System.out.println("7、退出**********************************\n");
                System.out.println("请选择(1~7):");
                num = input.nextInt();
                switch(num) {
                    case 1:
                        System.out.println("你选择的是开户:请输入卡号,密码,存款金额:");
                        u = new UserData(input.next(),input.next(),input.nextFloat());
                        System.out.println("开户成功,信息如下:敲任意键继续....");
                        System.out.println(u);
                        userList.put(u.getId(), u);
                        input.next();
                        break;
                    case 2:
                        System.out.println("你选择的是登录:请输入卡号,密码:");
                        String id = input.next();
                        String pwd = input.next();
                        u = userList.get(id);
                        if(u==null) {
                            System.out.println("卡号不存在:");
                            return;
                        }
                        if(u.getPassword().equals(pwd)) {
                            System.out.println("登录成功,你的信息如下:");
                            System.out.println(u);
                        }
                        break;
                    case 3:
                        if(u==null) {
                            System.out.println("用户不存。");
                            break;
                        }
                        System.out.println("你选择的是查询个人账户:信息如下:");
                        System.out.println(u);
                        break;
                    case 4:
                        if(u==null) {
                            System.out.println("用户不存。");
                            break;
                        }
                        System.out.println("你选择的是存款:请输入存款金额:");
                        float money = input.nextFloat();
                        u.setMoney(u.getMoney()+money);
                        System.out.println("存款后的信息如下:");
                        System.out.println(u);
                        break;
                    case 5:
                        if(u==null) {
                            System.out.println("用户不存。");
                            break;
                        }
                        System.out.println("你选择的是取钱:请输入取款金额:");
                        money = input.nextFloat();
                        u.setMoney(u.getMoney()-+money);
                        System.out.println("取款后的信息如下:");
                        System.out.println(u);
                        break;
                    case 6:
                        if(u==null) {
                            System.out.println("用户不存。");
                            break;
                        }
                        System.out.println("你选择的是转账:请输入对方账号:");
                        id = input.next();
                        UserData other = userList.get(id);
                        if(other==null) {
                            System.out.println("对方账号不存在:");
                            break;
                        }
                        System.out.println("请输入转账金额:");
                        money = input.nextFloat();
                        u.setMoney(u.getMoney()-money);
                        other.setMoney(other.getMoney()+money);
                        System.out.println(u);
                        System.out.println(other);
                        
                        break;
                    case 7:
                        break;
                    
                }
                if(num==7)
                    break;
                
            }
        }
        
    }
    
    
    class UserData implements Serializable{
        private String id;
        private String password;
    
        private float money;
    
        public UserData() {
            
        }
        public UserData(String id,String password,float money) {
            this.id = id;
            this.password = password;
            this.money = money;
    
        }
        public String getId() {
            return id;
        }
    
        public void setId(String id) {
            this.id = id;
        }
    
        public String getPassword() {
            return password;
        }
    
        public void setPassword(String password) {
            this.password = password;
        }
    
        public float getMoney() {
            return money;
        }
    
        public void setMoney(float money) {
            this.money = money;
        }
        @Override
            public String toString() {
                return "id:"+this.id+",密码:"+this.password+",账户余额:"+this.money;
            }
        
        
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月12日
  • 已采纳回答 4月4日
  • 创建了问题 4月4日

悬赏问题

  • ¥20 wireshark抓不到vlan
  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来