鱼C论坛

 找回密码
 立即注册
查看: 3260|回复: 2

[学习笔记] 银行系统

[复制链接]
发表于 2021-10-25 13:19:44 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
package bank;

import java.util.InputMismatchException;
import java.util.Scanner;
class OutException extends Exception

{

        OutException(){

        super("您的余额不足!");

        }

}
class OutException2 extends Exception

{

        OutException2(){

        super("请输入正确的序号!");

        }

}
class Bank
{
        private String Name;
        private double Money;
        Bank() {
        }
        Bank(String Name,double Money) {
                this.Name = Name;
                this.Money = Money;
        }

        public void printY() {
                System.out.println(Name+"当期账户余额为:"+this.Money);
        }
        public void printX(int i) {
        
                System.out.println((i+1)+"."+Name);
        }
        public void Cun(double Money)
        {
                this.Money+=Money;
        }
        public void Qu(double Money) throws OutException
        {
                if (this.Money<Money)
                        throw new OutException();
                this.Money-=Money;
        
        }
}

public class Test {

        public static void main(String[] args) {
                // TODO Auto-generated method stub
                Scanner sc = new Scanner(System.in);
                
                System.out.println("请输入创建的账户数量:\n");
                int m = sc.nextInt();
        
                sc.nextLine();
                Bank [] p = new Bank[m];
                for(int i = 0;i<m;i++)
                {
                        System.out.println("请输入账户"+(i+1)+"的名称和金额:");
                        String x = sc.nextLine();
                        Double y =sc.nextDouble();
                        sc.nextLine();
                        p[i] = new Bank(x,y);
                }
        while(true) {
        try {
                
                System.out.println("请选择你的功能:");
                System.out.println("0.退出程序\t1.存钱\n2.取钱\t3.查询账户\n");
                int n = sc.nextInt();
                sc.nextLine();        
                if(n<0||n>3)
                {
                        throw new OutException2();
                }
                
                switch(n) {
                case 1:
                        System.out.println("请选择存钱账户:");
                        for(int i=0;i<m;i++)
                        {
                                p[i].printX(i);
                        }
                        int a = sc.nextInt();
                        sc.nextLine();
                        if(a<1||a>m)
                        {
                                throw new OutException2();
                        }
                                
                        System.out.println("请输入存钱的金额:");
                        int b = sc.nextInt();
                        sc.nextLine();
                        p[a-1].Cun(b);
                        p[a-1].printY();
                        break;
                case 2:
                        System.out.println("请选择取钱账户:");
                        for(int i=0;i<m;i++)
                        {
                                p[i].printX(i);
                        }
                        int a1 = sc.nextInt();
                        sc.nextLine();
                        if(a1<1||a1>m)
                        {
                                throw new OutException2();
                        }
                        System.out.println("请输入取钱的金额:");
                        int b1 = sc.nextInt();
                        sc.nextLine();
                        p[a1-1].Qu(b1);
                        
                        p[a1-1].printY();
                        break;
                case 3:
                        System.out.println("请选择要查询的账户:");
                        for(int i=0;i<m;i++)
                        {
                                p[i].printX(i);
                        }
                        int a2 = sc.nextInt();
                        sc.nextLine();
                        if(a2<1||a2>m)
                        {
                                throw new OutException2();
                        }
                        p[a2-1].printY();
                        break;
                case 0:
                        System.out.println("程序已退出!");
                        System.exit(0);
                }
                //break;
                }
        
        catch (InputMismatchException e1) {

                System.out.println("输入类型错误");
                sc.next();
        }
        catch(OutException e1)
        {
                        System.out.println(e1.getMessage());
        } catch (OutException2 e) {
                // TODO Auto-generated catch block
                System.out.println(e.getMessage());
        }
        }
        }

}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-7-3 11:06:35 | 显示全部楼层
good
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-2-2 14:00:00 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-31 02:35

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表