⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bank.java

📁 贪食蛇的实现源码
💻 JAVA
字号:
package Tests;



/*写一个 银行类以及它的属性 如:开户日期,户名 ,帐号 ,余额,
交易时间 ,交易金额,交易状态(汇款,取款,存款)转入帐号
1: 实现存取款的交易,并打印回执单。(详细信息)
2: 实现2个帐号(或多个账户)之间的转账。*/
class Bank 
{
	private String beginAccountDate;
	private String accountName;
	private int accountId;
	private int leaveMoney;
	private String dealTime;
	private int dealMoney;//设为static的不同??
	private int zhuanRuAccountId;
	static int b=0,m=0;
	static Bank[] bb;
	//private enum dealCondition{huiKuan,getMoney,safeMoney};
	/*public static final String dealCondition1="huiKuan";
	public static final String dealCondition2="getMoney";
	public static final String  dealCondition3="safeMoney";*/
	//private String dealCondition;
	
   public int getAccountId() {
		return accountId;
	}
	public int getLeaveMoney() {
		return leaveMoney;
	}
	public void setLeaveMoney(int leaveMoney) {
		this.leaveMoney = leaveMoney;
	}
	public String accountName() {
		return accountName;
	}
	
	 Bank(String beginAccountDate, String accountName, int accountId, int leaveMoney) {
		this.beginAccountDate = beginAccountDate;
		this.accountName = accountName;
		this.accountId = accountId;
		this.leaveMoney = leaveMoney;
	}
	
	 Bank() {}
	 
	//实现存款的交易
	public  void dealSafe(int accountId,Bank[] bank,int safe)
	{
		/*Bank b=new Bank();
		b.setLeaveMoney(b.getLeaveMoney()+safe);*/
		int n=0;
		for(int i=0;i<bank.length;i++)
		{
			 if(bank[i].getAccountId()==accountId)
      	   {
				 b=i;
      	       n=bank[b].leaveMoney;
      	   }
		} 
		bank[b].setLeaveMoney(n+safe);//无记忆功能,每次从头来bu dui a ??
		//bank[b].leaveMoney=n+safe;
	    System.out.println("您存款后现在的账上余额为"+bank[b].leaveMoney+"元.");
	}
//	实现取款的交易
	public  void dealGet (int accountId ,Bank[] bank,int get)
	{	
		
		for(int i=0;i<bank.length;i++)
		{
			
			 if(bank[i].getAccountId()==accountId)
      	   {
				// b=i;
				 bank[i].leaveMoney=bank[i].leaveMoney-get;
				 System.out.println("您取款后现在的账上余额为"+bank[i].leaveMoney+"元.");
      	   }
		} 
	    //System.out.println("您取款后现在的账上余额为"+bank[b].leaveMoney+"元.");
	}
//实现2个帐号(或多个账户)之间的转账
	public static void translateAccount(int accountId,int zhuanRuAccountId,int safe,Bank[] banks)
	{
	 //bb=banks;
	for(int i=0;i<banks.length;i++)
	  {
		  if(banks[i].getAccountId()==accountId)
		  {
			 b=i;
			 //ba=banks[i];
			  // bank[i].leaveMoney= getLeaveMoney()-safe;//错
			  //leaveMoney= leaveMoney-safe;//错??
			  //leaveMoney=bank[i].leaveMoney -safe;//对
			
			 banks[b].leaveMoney= banks[b].leaveMoney- safe;
			 System.out.println(i+"的账上余额为"+banks[b].leaveMoney+"元.");
		   } 
		  if(banks[i].getAccountId()==zhuanRuAccountId)
		  {
			 m=i;
			 // ba2= banks[i];
			 banks[m].leaveMoney=banks[m].leaveMoney+safe;
			 System.out.println(i+"的账上余额为"+ banks[m].leaveMoney+"元.");
			  // bank[i].leaveMoney= getLeaveMoney()-safe;//错
			  //leaveMoney= leaveMoney-safe;//错??
			 // leaveMoney=bank[i].leaveMoney -safe;//对
		     // System.out.println("您转账后现在的账上余额为"+ leaveMoney+"元.");
		      //break;
		   }
		  
		}
	
	  
	 /*  //int  a1= ba.leaveMoney- safe;
	   ba2.leaveMoney = ba2.leaveMoney+ safe;
	  // int a2 = ba2.leaveMoney+ safe;
	   System.out.println("您转账后现在的账上余额为"+ba.leaveMoney+"元.");
	   System.out.println("您已成功转账."+ba2.leaveMoney);*/
	/*  f2or(int i=0;i<bank.length;i++)
	  {
		  if(bank[i].getAccountId()==zhuanRuAccountId)
		  {
			  //bank[i].leaveMoney = bank[i].leaveMoney+safe;
			  leaveMoney =bank[i].leaveMoney+safe;
			  System.out.println("您已成功转账."+leaveMoney);
			  break;
		   }
       }*/
	
	}

	//*********************************
	public static void main(String[] args) 
	{ 
		  String a0=MD5.crypt("123456");String a1=MD5.crypt("654321");//变量名不能以字母开头 String1=  错
		  String a2=MD5.crypt("sgdhgh");String a3=MD5.crypt("fgjhjf");
		  String a4=MD5.crypt("112652");String a5=MD5.crypt("e3dvbg");
		  String a6=MD5.crypt("sddf24");String a7=MD5.crypt("redcvh");
		  String a8=MD5.crypt("1fggb6");String a9=MD5.crypt("adfghh");
		// System.out.println(a0+"\t"+a1);//输出加密后的li gao 的密码
		 UserBank[] user1={
			         new  UserBank("cheng",a0),new  UserBank("li",a1),
	                 new  UserBank("zhao",a2),new  UserBank("qian",a3),
		             new  UserBank("sun",a4),new  UserBank("zhou",a5),
		             new  UserBank("wu",a6),new  UserBank("zheng",a7),
		             new  UserBank("wang",a8),new  UserBank("feng",a9)
	                };	
		
		
		
		Bank ba1=new Bank("2008.7.12","li",1234567890,2000);
		Bank ba2=new Bank("2008.7.10","zhao",1234567891,2000);
		Bank ba3=new Bank("2008.7.12","sun",123,2000);
		 Bank bank[]={ba1,ba2,ba3};
		 bb= bank;
		 
		/*ba1.dealGet(3000, ba1.dealCondition2, 500);
		ba2.dealSafe(2000, ba2.dealCondition3, 1000);
		ba1.translateAccount(1234567890, 1234567892, 500, bank);*/
		
		int b=0;
		UserBank li=new UserBank();
		Bank j=new Bank();
		Bank il=new Bank();
		System.out.println("请输入用户名:");
	       String name1=li.input(); 
		   System.out.println("请输入用户密码:");
		   String password1= MD5.crypt(li.input());
		   b= li.searchRright(user1,name1,password1);//name11,password11不能定义在do内因为在do外无法识别
           
		   
		   while(b!=2)
		 {
		   System.out.println("输入有误请从新输入");
		   System.out.println("请输入用户名:");
	       name1=li.input(); 
		   System.out.println("请输入用户密码");
		   password1= MD5.crypt(li.input());
		   b= li.searchRright(user1,name1,password1);
		 }
		   //name11与name1的区别??这样写两个不对吧请输入用户名:
		   /*loijj
		   请输入用户密码:
		   1222
		   输入有误请从新输入
		   请输入用户名:
		   li
		   请输入用户密码
		   654321
		   想存款请选1;想取款请选2;想转账请选3
		   1
		   请您输入存款金额:
		   500
		   您存款后现在的账上余额为500元.
		   想存款请选1;想取款请选2;想转账请选3
*/
           int n1=0;
           int n2=0;
           for(int i=0;i<bb.length;i++)
           {
        	   if(bb[i].accountName().equals(name1))
        	   {
        		   n1= bb[i].getAccountId();
        	       n2=bb[i].getLeaveMoney();//??n2值不随LeaveMoney的值的变化而变化,(bank[i].getLeaveMoney()值是个常量,leaveMoney个变量),是最初装入值固定不便了
        	      // System.out.println(n2);    //但bank[i].getLeaveMoney()值是随着set变化的
        	     //  bank[i].setLeaveMoney(bank[i].getLeaveMoney()+3000);//leaveMoney=6000
        	       //n2=bank[i].getLeaveMoney()+3000;//6000此处不改n2值其值将一直不变
        	       //System.out.println( bank[i].getLeaveMoney()+"     "+n2);//3000    6000
        	   }
        	   
           }
           
           do
           {
		 System.out.println("想存款请选1;想取款请选2;想转账请选3");
		 String c=li.input();
		 if(c.equals("1"))
		 {
			 System.out.println("请您输入存款金额:"); 
		     int m=Integer.parseInt(li.input());
			 j.dealSafe(n1,bb,m);//il.getLeaveMoney()没值因为il调默认的构造方法
		 }
			 else if(c.equals("2"))
			 {
				 System.out.println("请您输入取款金额:");
				 int m=Integer.parseInt(li.input());
				 j.dealGet(n1,bb,m);
			  }
			 else if (c.equals("3"))
			 {
				 System.out.println("请您输入要转账到的帐户的账号:"); 
				 int e=Integer.parseInt(li.input());
				 System.out.println("请您输入转账金额:");
				 int f=Integer.parseInt(li.input());
				 translateAccount(n1,e,f,bb);
		     }
	}
		while(true);

}
	public int getZhuanRuAccountId() {
		return zhuanRuAccountId;
	}
	public void setZhuanRuAccountId(int zhuanRuAccountId) {
		this.zhuanRuAccountId = zhuanRuAccountId;
	}
	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -