初学 Java ,ATM机,简单版

21人阅读 评论(0) 收藏 举报
分类:
package com.ziv.homework

import java.util.Scanner;

    /*
    1、ATM机
    要求:
        1)注册(两个):
            用户名,密码,余额
            在请输入用户名(英文),密码(数字,长度必须为6个长度),余额(double,必须大于10)。用一个数组装。
            提示:注册成功。
            否则失败。
        2)登录,欢迎页面。
            限制登录三次就被吃卡不能再次登录,提示还剩多少次登录机会(登录失败)
        3)登录成功
            1)查询余额
            2)取款
            3)转账
            4)存钱
            5)修改密码
            6)退出
    */

public class Atm {
    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        String op = null; //    输入的操作命令
        boolean bool = true;    //    外成循環
        String[][] user =new String[2][3];
        int count = 0;    //    當前用戶數量
        int userid = -1;    //    當前用戶登陸的id
        String name=null,pwd=null;
        double money ;
        while(bool){
            System.out.println("1.註冊,2.登陸,3.退出");
            op = s.next();
            switch (op) {
            case "1":
                if(count < 2){                    
                    while(true){
                        System.out.println("輸入用戶名:");
                        name = s.next();
                        if(name.length()>3&&name.length()<11){
                            user[count][0] = name;
                            System.out.println("添加成功");
                            break;
                        }else{
                            System.out.println("輸入錯誤必須在3-10之間!");
                        }
                    }
                    while(true){                        
                        System.out.println("請輸入密碼:");
                        pwd = s.next();
                        if(pwd.length() == 6){
                            user[count][1] = pwd;
                            user[count][2] = "";
                            count++;
                            System.out.println("添加成功");
                            break;
                        }else{
                            System.out.println("輸入錯誤密碼必須是6為");
                        }
                    }
                }else{
                    System.out.println("註冊數量以賣弄");
                }
                break;
            case "2":
                System.out.println("輸入用戶名:");
                name = s.next();
                System.out.println("請輸入密碼:");
                pwd = s.next();
                for (int i = 0; i < user.length; i++) {
                    if(name.equals(user[i][0]) && pwd.equals(user[i][1])){
                        userid = i;
                    }
                }
                if(userid<0){
                    System.out.println("用戶不存在,重新登陸");
                }else{
                    while(bool){
                        System.out.println("1.存錢\n2.取錢\n3.轉帳\n4.查詢\n5.密碼修改\n6.退出");
                        op = s.next();
                        switch (op) {
                        case "1":
                            System.out.println("存錢多少:");
                            if(user[userid][2] == "" || "".equals(user[userid][2]))
                                user[userid][2] = s.nextDouble() + "";
                            else
                                user[userid][2] = Double.parseDouble(user[userid][2]) + s.nextDouble() + "";
                            break;
                        case "2":
                            System.out.println("取多少錢");
                            double moneyIn= s.nextDouble();
                            money = Double.parseDouble(user[userid][2]);
                            if(moneyIn <= money){
                                user[userid][2] = money - moneyIn + "";
                            }else{
                                System.out.println("錢不夠,不能取");
                            }
                            break;
                        case "3":
                            while(true){
                                System.out.println("請輸入轉個誰:");
                                name = s.next();
                                if(name.equals(user[0][0]) || name.equals(user[1][0])){
                                    System.out.println("輸入要轉的錢");
                                    double moneyOut = s.nextDouble();
                                    money = Double.parseDouble(user[userid][2]);
                                    if(moneyOut <= money){
                                        user[userid][2] = money - moneyOut + "";
                                        int useridOther = 0;
                                        if(userid == 0) useridOther = 1;
                                        if(userid == 1) useridOther = 0;
                                        if(user[useridOther][2] == "" || "".equals(user[useridOther][2]))
                                            user[useridOther][2] = moneyOut + "";
                                        else
                                            user[useridOther][2] = Double.parseDouble(user[useridOther][2]) + moneyOut + "";
                                        System.out.println("轉帳成功!");
                                        break;
                                    }else{
                                        System.out.println("錢不夠,不能取");
                                    }
                                }else{
                                    System.out.println("用戶不在");
                                }
                            }
                            break;
                        case "4":
                            System.out.println("MONEY:" + user[userid][2]);
                            break;
                        case "5":
                            while(true){                        
                                System.out.println("請輸入密碼:");
                                pwd = s.next();
                                if(pwd.length() == 6){
                                    user[userid][1] = pwd;
                                    break;
                                }else{
                                    System.out.println("輸入錯誤密碼必須是6為");
                                }
                            }
                            break;
                        case "6":
                            bool = false;
                            break;
                        default:
                            System.out.println("你輸入的命令有無");
                            break;
                        }
                    }
                }
                bool = true;
                break;
            case "3":
                bool = false;
                break;
            default:
                System.out.println("不要亂搞!,再來一次");
                break;
            }
        }
    }
}

查看评论

java桌面程序-简单ATM附源代码

本文将简单介绍java桌面程序开发-简单atm的实现。 开发文档: 本文为简单的java桌面程序开发,不连接数据库,用一个用户类Guest保存用户信息。 程序模块有:登录模块,主界面模块,取款,...
  • A1247823556
  • A1247823556
  • 2016年12月09日 20:52
  • 424

java简单项目atm机

一个简单的j2se项目
  • Moon561
  • Moon561
  • 2016年09月13日 00:02
  • 1068

如何做一个简易的ATM机

下图是我做一个简易的ATM机的思路和步骤:(以人性化为原则,再根据生活中实际ATM机补充) 代码实现为: package lesson816; import java.util.Sc...
  • hugo_java
  • hugo_java
  • 2016年08月16日 21:27
  • 2352

数据库的连接与简单的ATM增删查改操作

连接数据库有两种方式,直连和桥连,这里作者只讲一下普遍的直连,桥连读者想知道请自行百度 首先要有驱动软件,笔者的工具很旧 在你的java项目里面创建一个文件夹lib,将jar文件复制到里面,右键点击...
  • qq_32693733
  • qq_32693733
  • 2016年05月08日 16:27
  • 608

用java实现一个简易自动提款机

用java实现一个简易自动提款机,且有以下要求如何实现呢?首先,我们定义一个用户类User,同时根据要求设计好属性(本人部分命名没有使用驼峰命名法,不够规范)。因为一个人可能有多个卡,卡号又不能重复,...
  • qq_39984761
  • qq_39984761
  • 2017年12月20日 22:09
  • 427

[课程设计]Java实现图形化窗口界面可存储ATM机(自助取款机)

这是一个使用io流和swing库制作的可存储的窗口化ATM机程序;臭不要脸的发上来敲打 实现的功能有:1.登录和注册用户(虽然现实中的ATM中没有注册功能敲打) 2.存款 3.取款 4.查询记录,包括...
  • qq_37724011
  • qq_37724011
  • 2017年12月01日 07:57
  • 1269

用面向对象思想编写方法写出atm机取款流程

在java学习中,面向对象思想是学习这门语言的核心,通过定义各种类和方法并调用 他们来写出一个项目,这样在修改项目时可以通过修改里面的方法而不是直接修改整 个代码,达到了方便简单的目的,下面就用一...
  • Ricardo18
  • Ricardo18
  • 2017年08月04日 10:47
  • 632

Java小程序:模拟ATM取款

Java小程序,模拟ATM机取款
  • yuerliang
  • yuerliang
  • 2016年05月11日 14:40
  • 3446

java-Atm机(图形界面)

源码: db包: package db; import java.sql.Connection; import java.sql.DriverManager; import java...
  • u012903073
  • u012903073
  • 2013年12月18日 10:25
  • 2681

利用c语言来进行简单的模拟ATM机

ATM的功能主要包括:现金取款、现金存款、现金存取款、余额查询、本行或异行转账、修改密码等基本功能;有些多功能ATM还提供诸如存折打印、对账单打印、信封存款、缴费、充值等一系列便捷服务。这个程序利用c...
  • SmileSoLuck
  • SmileSoLuck
  • 2017年04月16日 15:49
  • 1587
    个人资料
    等级:
    访问量: 72
    积分: 46
    排名: 181万+
    文章分类
    文章存档