练习3:修改withdraw 方法

练习目标-使用有返回值的方法:在本练习里,将修改withdraw方法以返回一个布尔值来指示交易是否成功。

任务

1.修改Account类
a.修改deposit 方法返回true(意味所有存款是成功的)。
b.修改withdraw方法来检查提款数目是否大于余额。如果amt小于balance,则从余额中扣除提款数目并返回true,否则余额不变返回false。

2.在exercise2主目录编译并运行TestBanking程序,将看到下列输出;

Creating the customer Jane Smith.
Creating her account with a 500.00 balance.
Withdraw 150.00: true
Deposit 22.50: true
Withdraw 47.62: true
Withdraw 400.00: false
Customer [Smith, Jane] has a balance of 324.88

//Account类

package banking;

public class Account {
private double balance;
public Account(double i)
{
balance=i;

}
public double getBalance()
{
	
	return balance;
}
public boolean deposit(double i)
{
	balance+=i;
	System.out.print("Deposit "+i);
	return true;
}
public boolean withdraw(double i)
{
	if(balance>=i)
	{
	balance-=i;
	System.out.print("Withdraw "+i);
	return true;
	}
	else
	{
		System.out.print("余额不足");
		return false;
	}
}

}

//Testbanking类

package banking;

public class TestBanking {

public static void main(String[] args) {
	Account a=new Account(500.00);
	System.out.println("Creating an account with a "+a.getBalance()+"balance");
	a.withdraw(150.00);
	a.deposit(22.50);
	a.withdraw(47.62);
	System.out.println("The account has a balance of "+a.getBalance());
	Customer c=new Customer("Jane", "Smith");
	Account b=new Account(500.00);
	c.setAccount(b);
	a=c.getAccount();
	System.out.println("Creating her account with a "+a.getBalance()+"balance");
	System.out.println(":"+a.withdraw(150.00));
	System.out.println(":"+a.deposit(22.50));
	System.out.println(":"+a.withdraw(47.62));
	System.out.println("Customer ["+c.getFirstName()+","+c.getLastName()+"] has a balance of  "+a.getBalance());
	

}

}

//运行

Creating an account with a 500.0balance
Withdraw 150.0Deposit 22.5Withdraw 47.62The account has a balance of 324.88
Creating the customer Jane Smith
Creating her account with a 500.0balance
Withdraw 150.0:true
Deposit 22.5:true
Withdraw 47.62:true
Customer [Jane,Smith] has a balance of 324.88

原文地址:https://www.cnblogs.com/nicebaby/p/5907025.html