
正文
java基础atm代码 javaatm取款机代码
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
用java做一个简易的ATM机具体流程在下面
代码如下
package BaiDdu;
import java.util.Scanner;
public class ATM {
/*1提示请输入密码然后直接进入下一步。密码6位限制(限制方法用 “最小大于100000最大小于999999”这样限制)
2.提示密码正确还是错误密码直接弄成“123456”错误返回上一步循环方法用for循环。
3.密码输入正确后进入下一步提示5个选项(1.余额查询“基础10000”2.取款 3存款4.退出)
4.进行取款或者存款之后要回到第三步重新选择(余额和取款存款相关联)
备注:用键盘输入的方法用scanner*/
private static int money=10000;//全局变量 余额 默认10000
public static void main(String args[])
{
for(;;){//for循环,有意思吗?
System.out.println("请输入密码:");
Scanner input=new Scanner(System.in);
int pw=input.nextInt();
if ( Checkpw(pw)) {
System.out.println("密码正确。");
Next();
}
else System.out.println("密码错误!");
}
}
public static boolean Checkpw(int pw)
{
if (pw==123456)return true;//固定密码就不需要限制位数了,反正不符合就错
else
return false;
}
public static void Next() {
do {
System.out.println("请选择你需要的功能:");
System.out.println("1.余额查询 2.取款 3.存款 4.退出");
int value = new Scanner(System.in).nextInt();
switch (value) {
case 1:// 查询余额
System.out.println("您的余额为 "+money+"元");
break;
case 2:// 取款
System.out.println("请输入取款金额:");
int getnum=new Scanner(System.in).nextInt();
if (getnum0) System.out.println("输入金额有误!");
else if(getnummoney)System.out.println("余额不足.");
else {money=money-getnum;System.out.println("取款成功,余额为"+money);}
break;
case 3:// 存款
System.out.println("请输入存款金额:");
int pushnum= new Scanner(System.in).nextInt();
if (pushnum0) System.out.println("输入金额有误!");
else {money=money+pushnum;System.out.println("存款成功,余额为"+money);}
break;
case 4:// 退出
System.out.println("谢谢使用!");
System.exit(0);
break;
default:
System.out.println("输入有误");
break;
}
}while(true);
}
}
2、运行效果
相关问答
Q1: java ATM登陆循环代码?
下面是一个简单的登录示例:
代码复制展示:
public class ATMLogin {
public static void main(String[] args) {
// 设置用户名和密码
String username = "gqk";
String password = "520";
// 最多可以登录 3 次
for (int i = 0; i 3; i++) {
// 读取用户输入的用户名和密码
Scanner in = new Scanner(System.in);
System.out.print("请输入用户名:");
String inputUsername = in.nextLine();
System.out.print("请输入密码:");
String inputPassword = in.nextLine();
// 检查用户名和密码是否正确
if (inputUsername.equals(username) inputPassword.equals(password)) {
System.out.println("欢迎" + username + "登录!");
break; // 登录成功,退出循环
} else {
System.out.println("用户名或密码错误,请重新输入!");
}
}
// 如果 3 次登录都失败,则提示用户
System.out.println("卡片已经被锁,请联系客服人员!");
}
}
回答不易望请采纳
Q2: 求Java代码 模拟简易atm机
参考了别人的代码。略作修改,已经很简单了:
InfoATM.java:
public class InfoATM {
double money = 0;
public InfoATM(double cash) {
super();
this.money = cash;
}
// 存款的方法
public void save(double count) {
money += count;
}
// 取款的方法
public void draw(double count) {
money -= count;
}
public double getMoney() {
return money;
}
public void setMoney(double money) {
this.money = money;
}
}
TestATM.java:
import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class TestATM extends JFrame {
private static final long serialVersionUID = 2531222181184935595L;
// 主面板pnBasic是用来装pnDate和标签文字的。
private JPanel pnBasic;
// 添加到主面板中的中间 pnDate面板是为了装表单的。
private JPanel pnDate;
// 添加到主面板中的北边 pnLabel面板是为了装欢迎词的
private JPanel pnLabel;
InfoATM atm = new InfoATM(0);
public TestATM() {
pnBasic = new JPanel();
// 主面板pnBasic是用来装pnDate和标签文字的。
pnDate = new JPanel(new GridLayout(2, 2));
// pnDate面板是为了装表单的。
pnLabel = new JPanel();
JLabel top = new JLabel("欢迎来到中国银行!");
pnLabel.add(top);
// 先将数值添加在一个容器中并设置其在容器的右边,在将容器添加在网格的第一格
JPanel jp1 = new JPanel();
JLabel number = new JLabel("数值:");
final JTextField box = new JTextField(5);
jp1.add(number);
jp1.add(box);
JPanel jp2 = new JPanel();
JButton create = new JButton("新建银行账户");
jp2.add(create);
JButton take = new JButton("取款");
JButton in = new JButton("存款");
pnDate.add(jp1);
pnDate.add(jp2);
pnDate.add(take);
pnDate.add(in);
// 加一句下面的就好了
JPanel jpS = new JPanel();
final JLabel total = new JLabel("您现在的账户余额是:0 元");
jpS.add(total);
pnBasic.setLayout(new BorderLayout());
pnBasic.add(pnLabel, BorderLayout.NORTH);
pnBasic.add(pnDate, BorderLayout.CENTER);
pnBasic.add(jpS, BorderLayout.SOUTH);
setContentPane(pnBasic);
setBounds(400, 250, 500, 500);
pack();
setDefaultCloseOperation(DISPOSE_ON_CLOSE);
setVisible(true);
pack();
in.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (box.getText() != null box.getText() != "") {
try {
double count = Double.parseDouble(box.getText());
if (count 0) {
atm.save(count);
total.setText("您现在的账户余额是:" + atm.getMoney() + "元");
box.setText("");
}
} catch (Exception e1) {
System.out.println("您输入的数值必须是数字");
}
}
}
});
take.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (box.getText() != null box.getText() != "") {
try {
double count = Double.parseDouble(box.getText());
if (count = 0 count = atm.getMoney()) {
atm.draw(count);
total.setText("您现在的账户余额是:" + atm.getMoney() + "元");
box.setText("");
} else {
System.out.println("你的余额不足,取款失败");
}
} catch (Exception e1) {
System.out.println("您输入的数值必须是数字");
}
}
}
});
create.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
total.setText("您现在的账户余额是:0元");
atm.setMoney(0);
box.setText("");
}
});
}
public static void main(String[] args) {
new TestATM();
}
}
Q3: 用Java实现ATM的转账,取款,改密码,查询功能, 要代码!
import javax.swing.JOptionPane;
public class Account
{
private String name;
private String account;
private String data;
private String ID;
private double balance;
public Account(String name,double balance,String data,String ID)
{
this.name = name;
this.balance = balance;
this.data=data;
this.ID=ID;
}
public String getaccount()
{
this.account=String.valueOf((int)(Math.random()*100000)+1);
return account;
}
public String getdata()
{
return data;
}
public String getID()
{
return ID;
}
public String getName()
{
return name;
}
public double getbalance()
{
return balance;
}
//查看账户余额
public double balance()
{
return balance;
}
//查看开户时间
public String data()
{
return data;
}
//存款操作
public boolean put(double value)
{
if (value0)
{
this.balance += value;
return true;
}
return false;
}
//取款操作
public double get(double value)
{
if (value0)
{
if (value=this.balance)
this.balance -= value;
else
{
value = this.balance;
this.balance = 0;
}
return value;
}
return 0;
}
public static void main(String args[]){
Account user=new Account("张三",2000,"2011/05/23","362329198906234225");
String str;
int b;
String s=JOptionPane.showInputDialog("您好,存款选择1,取款选择2,退出选择0");
int x=Integer.parseInt(s);
while(x!=0){
if(x==1)
{
str=JOptionPane.showInputDialog("输入您要存入的数额");
b=Integer.parseInt(str);
if( user.put(b)){
JOptionPane.showMessageDialog(null, "请放入钞票!");
JOptionPane.showMessageDialog(null,"开户账号为"+user.getaccount()+"\n"+user.getName()+"\n开户时间为"+user.data()+"\n您的余额为"+user.balance());
}
else
JOptionPane.showMessageDialog(null, "你所输入的存款数额有误!");
}
else{
str=JOptionPane.showInputDialog("输入您要取出的数额");
b=Integer.parseInt(str);
if(buser.balance())
{
JOptionPane.showMessageDialog(null, "余额不足");
}
else
{
JOptionPane.showMessageDialog(null, "请取出钞票!");
user.get(b);
JOptionPane.showMessageDialog(null,"开户账号为"+user.getaccount()+"\n"+user.getName()+"\n开户时间为"+user.data()+"\n您的余额为"+user.balance());
}
}
s=JOptionPane.showInputDialog("您好,存款选择1,取款选择2,退出选择0");
x=Integer.parseInt(s);
}
}
}
Q4: java atm机代码
package arraylist;
import java.util.Scanner;
public class AtmDemo
{
public static void main(String[] args)
{
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
Boolean flag = true;
int times = 0;
while(flag){
times++;
if(times == 4){
System.out.println("密码错误,请取卡");
break;
}
System.out.println("请输入你的密码");
String password = sc.next();
if(password.equals("111111")){
Boolean moneyflag = true;
while(moneyflag){
System.out.println("请输入金额");
int number = sc.nextInt();
if(number = 0 number = 1000 number % 100 == 0){
System.out.println("用户取了" + number + "元。交易完成");
moneyflag = false;
}else{
System.out.println("请重新输入金额");
}
}
break;
}else{
continue;
}
}
}
}
java基础atm代码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于javaatm取款机代码、java基础atm代码的信息别忘了在本站进行查找喔。






