练习目标-使用有返回值的方法:在本练习里,将修改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/smile-dream/p/5915467.html

修改withdraw 方法相关推荐

  1. python脚本设置linux环境变量_Linux环境变量export方法与修改文件方法的区别

    玩蛇网推荐图文教程:python 列表 要想修改Linux环境变量有两种方法可以实现,但是关于Linux环境变量export方法与修改文件方法的区别你又了解多少呢?设置 Linux 环境变量可以通过 ...

  2. 电脑修改ip地址方法cmd_Mac系统如何创建用户群组?苹果电脑修改用户名方法

    群组允许多个用户拥有相同的访问权限.例如,您可以将文件夹或文件的特定访问权限授予群组,这样该群组的所有成员都可以进行访问.您还可以将每个共享文件夹的特定访问权限分配给群组. Mac系统如何创建用户群组 ...

  3. aop对请求后端的参数修改_Spring Aop 修改目标方法参数和返回值

    @Component("changeIdNoAopHandler")public classChangeIdNoAopHandler {private static Logger ...

  4. php判断表单修改内容,JavaScript判断用户是否对表单进行了修改的方法_javascript技巧...

    本文实例讲述了JavaScript判断用户是否对表单进行了修改的方法.分享给大家供大家参考.具体分析如下: 这段JS代码可以判断出用户是否对表单内容进行了修改,如果修改了表单,并退出浏览器,则会提醒用 ...

  5. SQL语句的添加、删除、修改多种方法

    SQL语句的添加.删除.修改多种方法 SQL语句的添加.删除.修改虽然有如下很多种方法,但在使用过程中还是不够用,不知是否有高手把更多灵活的使用方法贡献出来? 添加.删除.修改使用db.Execute ...

  6. hp-ux修改时区方法_UX研究人员可以倡导人类的6种方法

    hp-ux修改时区方法 In the UX world, we often hear terms like "user-centered," "human-centere ...

  7. MTK 驱动开发(54)---MTK-thermal.conf温度参数修改的方法

    MTK-thermal.conf温度参数修改的方法 thermal.conf设计CPU.PMIC.BATTERY等的温度参数,其路径一般在device/目录下,但是这是个加密文件,直接打开的话就是一堆 ...

  8. 【VS开发】VS2010 MFC中控件、对话框等背景颜色动态修改的方法

    [VS开发]VS2010 MFC中控件.对话框等背景颜色动态修改的方法 标签(空格分隔):[VS开发] 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ 说明: ...

  9. cmd 新增dns_win10在cmd中修改dns方法教程

    电脑中有些操作需要更改dns地址才可以进行,有时候为了获得更加速度的上网体验或者是想体验一些防劫持智能dns的话,就需要去更改dns地址.那么,Win10在cmd中修改dns对于此类问题,今天小编就详 ...

最新文章

  1. 安装numpy/scipy/scikit-learn的方法
  2. 遍历目录寻找指定文件
  3. UA MATH567 高维统计 专题0 为什么需要高维统计理论?——协方差估计的高维效应与Marcenko-Pastur规则
  4. 【网络安全】ollvm反混淆学习
  5. 论文落地 101:算法工程化的那些坑
  6. LeetCode Algorithm 148. 排序链表
  7. webpack 打包
  8. NoteRenderer.render logic
  9. matlab 无向拓扑图,无向图绘画树状拓扑图算法
  10. 使用 Docker 部署 Node 服务
  11. 祝贺!两位 Apache Flink PMC 喜提 Apache Member
  12. 区块链开发(四)Nodejs下载安装
  13. java删除文件夹下的所有文件和文件夹
  14. Windows环境下用Anaconda(2.7/3.6)安装GPU版TensorFlow
  15. java个十百千万位余数_1 Java第三课[流程控制]
  16. 2014年红帽高峰论坛随笔
  17. ajax angular点击事件_angularjs和ajax的结合使用 (三)
  18. 傅里叶变换是什么?一看就懂,写的超级棒!
  19. 图片的角如何弄成圆角?
  20. 温州商人有哪些生意经?

热门文章

  1. 2022-2028年中国汽车修理行业市场前瞻与投资规划分析报告
  2. java 原子量_Java原子量 - Rickxue的个人空间 - OSCHINA - 中文开源技术交流社区
  3. 用gensim学习word2vec
  4. ELMo解读(论文 + PyTorch源码)
  5. pytorch记录:seq2seq例子看看这torch怎么玩的
  6. LeetCode简单题之位1的个数
  7. Deep Learning部署TVM Golang运行时Runtime
  8. NVIDIA DRIVE AGX开发工具包
  9. 2021年大数据Flink(二十六):​​​​​​​State代码示例
  10. python 判断字符串是否以数字结尾