import java.util.*;
public class Jatm{
static String user = "123";
static String password = "123456";
static int sum = 5000;
static Scanner in = new Scanner(System.in);
//主函数
public static void main(String[] args) {
Jatm atm = new Jatm();
atm.login();
atm.mains();
}
//登录
public static void login(){
System.out.println("**************************");
System.out.println("***欢迎登录中华大衡银行***");
System.out.println("请输入用户名:");
String name = in.nextLine();
System.out.println("请输入密 码:");
String pw = in.nextLine();
if(name.equals(user) && pw.equals(password)){
System.out.println("登录成功!");
//mains();
}else{
System.out.println("登录失败,用户名或密码错误!请重新登录");
login();
}
}

//主页面
public static void mains(){
System.out.println("**************************");
System.out.println("***欢迎来到中华大衡银行***");
System.out.println("*****1、查询余额 *******");
System.out.println("*****2、存款 *******");
System.out.println("*****3、取款 *******");
System.out.println("*****4、修改密码 *******");
System.out.println("*****5、退出 *******");
System.out.println("**************************");
System.out.println("请选择:");
int n = in.nextInt();
switch(n){
case 1: search();
break;
case 2: add();
break;
case 3: get();
break;
case 4: change();
break;
case 5: exit();
break;
default:
System.out.println("选择错误,请重新选择:1--5数字");
mains();
break;
}
}

//查询
public static void search(){
System.out.println("您的账户余额为:"+sum+"元");
mains();
}

//存款
public static void add(){
System.out.println("请输入存款金额:");
int counts = in.nextInt();
sum+=counts;
System.out.println("存款成功!");
mains();
}

//取款
public static void get(){
System.out.println("请输入取款金额:");
int counts = in.nextInt();
if(counts>=sum){
System.out.println("您的余额不足,请输入取款金额:");
get();
}else{
sum-=counts;
System.out.println("取款成功!");
mains();
}
}

//改密
public static void change(){
Scanner in = new Scanner(System.in);
System.out.println("请输入原密码:");
String oldpw =in.nextLine();
if(oldpw.equals(password)){
System.out.println("请输入新密码:");
String newpw = in.nextLine();
password = newpw;
System.out.println("密码修改成功");
mains();
}else{
System.out.println("原密码错误!");
change();
}
}
//退出
public static void exit(){
Scanner in = new Scanner(System.in);
System.out.println("确定退出?(yes/no):");
String conf = in.nextLine();
if(conf.equals("yes")){
System.out.println("请慢走,欢迎下次光临!");
}else if(conf.equals("no")){
mains();
}else{
System.out.println("没有此选项哟!");
mains();
}
}
}

java命令行版的ATM的更多相关文章

  1. 安装appium桌面版和命令行版

    一 桌面版(打开很慢,常用于辅助元素定位) 1.官网下载window版本: 2.直接点击紫色图标即可打开   3.启动server 二  命令行版(打开很快,常用于执行脚本) 1.jdk 安装jdk并 ...

  2. Java 命令行编译项目

    如果是用Exlipse, 第三方的包可以放在eclipse文件夹的jre包的lib文件夹中! (初学者的一些总结-高手们勿喷哈-) 原因: 以前一直用Eclispe编程环境运行Java.非常舒服,就像 ...

  3. Windows下安装appium桌面版和命令行版

    安装appium桌面版和命令行版   一 桌面版(打开很慢,常用于辅助元素定位) 1.官网下载window版本:  github search appium desktop download late ...

  4. Python 实现有道翻译命令行版

    一.个人需求 由于一直用Linux系统,对于词典的支持特别不好,对于我这英语渣渣的人来说,当看英文文档就一直卡壳,之前用惯了有道词典,感觉很不错,虽然有网页版的但是对于全站英文的网页来说并不支持.索性 ...

  5. Linux java 命令行编译 jar包

    Java 命令行编译成class,然后在打包成jar文件. 编译成class javac -classpath $CLASS_PATH -d class ./src/Hello.java 可以通过ja ...

  6. java命令行执行程序解决依赖外部jar包的问题

    用java命令行直接执行程序,如果这个程序需要引用外部jar包.就不能单纯用java xx来执行 如果你的jar包和程序就在一个目录: 编译 javac -cp D:\yy\yy.jar,D\xx\x ...

  7. java命令行打war

    java命令行打war(windows下) 切换到需要打包文件夹low的上级目录>jar -cfM legendwealth.war -C low .

  8. appium桌面版和命令行版的安装

    一.appium桌面版: 启动很慢,一般用于元素定位 Appium-Desktop官方下载地址:https://github.com/appium/appium-desktop/releases/ ( ...

  9. Java命令行的基本编译运行

    1.编译 编写MyProgram.java文件,内容如下: public class MyProgram { public static void main(String[] args) { Syst ...

随机推荐

  1. js 判断手机横竖屏的实现方法(不依赖任何其他库)

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  2. UnicodeEncodeError:'latin-1' codec can't encode character

    UnicodeEncodeError:'latin-1' codec can't encode character

  3. SpringMVC_1

    //@SessionAttributes(value={"user"},types={String.class}) @Controller public class SpringM ...

  4. 【USACO07FEB】 Cow Relays

    [题目链接]              点击打开链接 [算法]            朴素算法,就是跑N-1遍floyd            而满分算法就是通过矩阵快速幂加速这个过程 [代码]   ...

  5. KeepAlived的实现示例

    KeepAlived的实现示例 KeepAlived的实现 HA Cluster配置准备: 各节点时间必须同步 ntp(6), chrony(7) 1>在centos6上 ntpdate 172 ...

  6. CodeForces 515C Drazil and Factorial (水题)

    题意:给出含有 n 个只有阿拉伯数字的字符串a,设定函数F(a) = 每个数字的阶乘乘积 .需要找出 x,使得F(x) = F(a),且组成 x 的数字中没有0和1.求最大的 x 为多少. 析:最大, ...

  7. git回到没push的commit

    创建: 2017/10/28   merge master以后数据库出了问题,改好以后发现view有点问题,commit以后没提交就reset了.过后才想起来怎么回去???吓成狗,索性找到了下面这个. ...

  8. bzoj 3401: [Usaco2009 Mar]Look Up 仰望【单调栈】

    用单调递减的栈从后往前扫一遍即可 #include<iostream> #include<cstdio> using namespace std; const int N=10 ...

  9. 清北考前刷题day4下午好

    /* 辗转相除,每次计算多出现了几个数. */ #include<iostream> #include<cstdio> #include<cstring> #inc ...

  10. [转]Linux系统调用--fcntl函数详解

    功能描述:根据文件描述词来操作文件的特性. 文件控制函数          fcntl -- file control头文件: #include <unistd.h> #include & ...