简单的银行系统(java)

本文介绍了一个基于单链表实现的简易银行系统的设计与实现过程,包括用户注册、登录、存款、取款等功能,并探讨了进一步优化的方向。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

啊。。。开宗明义这个程序我得承认这个是一个·半程品但是拿来糊弄一下老师或者有心人想要再加工也是可以的。

天地人民银行

需要改进的地方

封装

这是一个单链表上面我都写好了那些变量的名字;

这个其实没什么好说的

封装其实特别简单但是当时我一个人时间有很紧(就是懒 啊对对对!!!!!)

然后整体方法可以被封装为3个

但是我没有(欸嘿嘿!!真的一个人时间有限 如果给使用者带来了麻烦你可以别用)

只需要吧单链表操作的head传过去 然后吧用户节点传过去即可。很简单!!!

最后

其实说到现在我其实也挺想吧这个代码写的完完全全的然后发出来让大家可以直接复制粘贴就是很完美的东西。但是很多时候也许是我自己太懒惰了。或者是真的有点厌恶了。最后整出来这么一个东西希望大家谅解。

(最后不喜欢可以别用!!!!!!!别看见就来一句这tm什么垃圾代码)

(啊对对对!!!!)

package kczy;
import java.util.*;

import javax.management.RuntimeErrorException;
class User{

    public int cardNumbe;       //卡号
    public int passwword;       //密码
    public int balance;         // 余额
    public String name;
    User   naxt;

}
//这里------------------------------------------------------------------------------------------------------------------------
class Card{
    User head;
    int i;  
    public void mb(){
        User user =new User();
        if(this.head==null){
            this.head=user;
            user.passwword=123;
            this.i++;
            return;
        }
        User cur=this.head;
        while(cur.naxt!=null){
            cur=cur.naxt;
        }
        cur.naxt=user;
        user.passwword=123;
        this.i++;
    }                   //计数器
    public void ganerate(){                     //生成卡
        User user=new User();
        Scanner scanner=new Scanner(System.in);
        User cur=this.head;
        if(this.head==null){
            this.head=user;
            System.out.println("请输入您的姓名");
            user.name=scanner.nextLine();
            user.name=scanner.nextLine();
            System.out.println(i+"您的卡号");
            System.out.println("请输入您的密码");
            user.passwword=scanner.nextInt();
            user.cardNumbe=i;
           
            this.i++;
            return;
        }
        while(cur.naxt!=null){
            cur=cur.naxt;
        }
        cur.naxt=user;
        System.out.println(i+"您的卡号");
        System.out.println("请输入您的密码");
        user.passwword=scanner.nextInt();
        System.out.println("请输入您的姓名");
            user.name=scanner.nextLine();
            user.name=scanner.nextLine();
        user.cardNumbe=i;
        this.i++;
    }
    public void panDuan(int cardNumde,int password){
        User flg=this.head;
        while(cardNumde!=0){
            flg=flg.naxt;
            cardNumde--;
        }
        if(password!=flg.passwword){
            return;
        }
        else{
            serveWindow(flg);
        }
    }
    //------------------------------------------------------------------------------------------------------------------------------
    //可拆分封装成类      -----------------------------------------------------------------------------------------------
    public void denglu(){
        int cardNumde,password;
        Scanner scanner=new Scanner(System.in);
        while(true){
            
                System.out.println("***************************************************");
                System.out.println("****************中国人民天地银行*******************");
                System.out.println("***********感受这被囚禁了千万年的愤怒***************");
                System.out.println("***************************************************");
                System.out.println("***************************************************");
                System.out.println("*****************登录:1***************************");
                System.out.println("*****************注册:2***************************");
                System.out.println("*****************退出:3***************************");
                System.out.println("***************************************************");
                System.out.println("**********热线电话666666666666**********************");
                System.out.println("********************************行长:伊利丹*******");
                System.out.println("***************************************************");

                int j=scanner.nextInt();
                if(j==0){
                    return;
                }
                else if(j==2){
                ganerate();  
                }
                else{
                    int i=0;
                    i++;
                    System.out.println("请输入用户名");
                    cardNumde=scanner.nextInt();
                    System.out.println("请输入密码");
                    password=scanner.nextInt();
                    panDuan(cardNumde, password);
                    if(i==2){
                        throw new RuntimeException("您已经尝试3次,自动退出");
                    }
                    return;
                }
            }
    }
    //-----------------------------------------------------------------------------------------------------------------------------
    //当然这个也可以------------------------------------------------------------------------------------------------------------------
    public void deposit(User user){                                         //存
        Scanner scanner=new Scanner(System.in);
        int money;
        System.out.println("请输入您需要存的数码");
        money=scanner.nextInt();
        if(money>=100&&money%10==0){
            user.balance=user.balance+money;
        }
        System.out.println(user.balance);
    }
    public void withdrawal(User user){                                      //取
        Scanner scanner=new Scanner(System.in);
        int money;
        System.out.println("请输入您需要取的数码");
        money=scanner.nextInt();
        if(money>user.balance){
            System.out.println("没有足够的与额");
        }
        if(money>=100&&money%10==0&&money<user.balance){
            user.balance=user.balance-money;
        }
        System.out.println(user.balance);

    }
    public void modification(User user){
        System.out.println("请输入用户名和密码");
        Scanner scanner=new Scanner(System.in);
        int cardNumde=scanner.nextInt();
        int password=scanner.nextInt();
        User cur;
        cur=this.head;
        while(cardNumde!=0){
            cur=cur.naxt;
            cardNumde--;
        }
        if(cur.passwword==password){
            System.out.println("请输入新的密码");
            cur.passwword=scanner.nextInt();
            denglu();
        }
    }
    public void serveWindow(User user){
        Scanner scanner=new Scanner(System.in);
        while(true){
            System.out.println("*******************************************************");
            System.out.println("************欢迎"+user.name+"光临中国人民天地银行******");
            System.out.println("*******************************************************");
            System.out.println("*******************************************************");
            System.out.println("********存款:1*******************取款:2**************");
            System.out.println("*******************************************************");
            System.out.println("*******************************************************");
            System.out.println("******修改密码:3***************查询余额:4************");
            System.out.println("*******************************************************");
            System.out.println("*******************************************************");
            System.out.println("*************************************退出:0************");
            System.out.println("*******************************************************");
            System.out.println("*******************************************************");
            int i;
            i=scanner.nextInt();
            switch(i){
                case 1:
                deposit(user);
                    break;
                case 2:
                withdrawal(user);
                    break;
                case 3:
                modification(user);
                    break;
                case 4:
                System.out.println(user.balance);
                    break;
                case 0:
                    return ;
            }
            
        }
    }    
}

//到这里--------------------------------------------------------------------------------------------

main 函数

public class TeastDamo2 {
    public static void main(String[] args) {
        Card card=new Card();
        card.mb();
        card.mb();
        card.denglu();
    }
}

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值