Decompose Conditional(分解条件表达式)

有一个复杂的 if-else 语句

if (date.before(SUMMER_START) || date.after(SUMMER_END)) {charge = quantity * winterRate + winterServiceCharge;
} else {charge = quantity * summerRate;
}

重构: 从if-else 中分别提炼出独立函数

if (notSummer(date)) {charge = winterCharge(quantity);
} else {charge = summerCharge(quantity);
}private boolean notSummer(Date date) {return date.before(SUMMER_START) || date.after(SUMMER_END);
}private double summerCharge(int quantity) {return quantity * summerRate;
}private double winterCharge(int quantity) {return quantity * winterRate + winterServiceCharge;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/497288.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2018 AI 产品趋势:喧嚣的追风者和静默的收割人

来源:36氪毫无疑问,在消费科技品领域,AI产品有泡沫。故事要从2014年说起。那一年底,亚马逊低调发布了智能音箱Echo,苹果发布了第一代Apple Watch智能手表。比起AI浪潮,那个时候大家谈论更多,是智…

基于Ajax的应用程序架构汇总(三)

3 服务器端:多种语言 3.1 跨平台异步的接口工具箱(5月2005年) CPAINT:http://cpaint.sourceforge.net/,是一真正的支持PHP和ASP/Vbscript的Ajax实现和JSRS(JavaScript远程脚本)实现。CPAINT提供给你需求的代码在后台实现AJAX和JSRS&#xff0…

ftp服务器需要什么系统,ftp服务器需要什么系统

ftp服务器需要什么系统 内容精选换一换单独购买的云硬盘为数据盘,可以在云硬盘列表中看到磁盘属性为“数据盘”,磁盘状态为“可用”。此时需要将该数据盘挂载给云服务器使用。系统盘必须随云服务器一同购买,并且会自动挂载,可以在…

3D 鼠标跟随脚本详解

请大家先看右边的动画演示。这个动画就是由 jimbob 制作的,您可以到这里来下载这个动画的原始文件。下面请看他的详细解释: If Frame Is Loaded ("end")Go to and Play ("start")End Frame Loaded initalise:Comment: Comment: 初始…

重磅 | MIT启动IQ计划:研究人类智能,让全世界的机构共同合作

作者:思颖概要:当地时间 2 月 1 日,MIT 宣布启动 MIT Intelligence Quest(智能探索)计划,该项计划旨在助力人类智能的基础研究,推动能造福于社会的技术工具的发展。据悉,该项声明由 …

risc系统服务器,精简的高端 解析四大RISC服务器处理器

也许您很难相信,作为我们今天仍在广泛使用的诸如“扣肉”之类的最新双核乃至是CPU(Center Prosessing Unit中央处理器),都是基于始创在上世纪60年代的CISC指令集,距今已有四十多年了。CISC是英文“Complex Instruction Set Computer”的缩写&…

Consolidate Conditional Expression(合并条件表达式)

有一系列条件测试&#xff0c;都得到相同结果 private double disabilityAmount() {if (seniority < 2) return 0;if (monthsDisabled > 2) return 0;if (isPartTime) return 0;// ... } 重构&#xff1a;将这些条件测试合并为一个条件表达式&#xff0c;并提炼为一个独…

梅露可物语虚拟服务器,【图片】【萌新】主界面的使用方法(零基础版)【梅露可物语日服吧】_百度贴吧...

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼那下面主要讲讲梅露可的货币们&#xff1a;1、 钻石&#xff1a;钻石的主要用途有三个。一、抽抽抽&#xff01;二、碎了这个钻来回复你的ap。三、战斗时候被人打败了有时可以用钻石复活。不过第三个基本是都不用的&#xff0c;因为…

北京发自动驾驶车辆考试大纲 难度堪比普通人考驾照

来源&#xff1a;新京报概要&#xff1a;自《加快推进自动驾驶车辆道路测试有关工作的指导意见》发布以来&#xff0c;北京进一步为自动驾驶车辆明确其性能测试与实际道路测试的“考试大纲”。自《加快推进自动驾驶车辆道路测试有关工作的指导意见》发布以来&#xff0c;北京进…

免费 Flash 留言板 -Powered by Kong

-----点击预览------新开窗口地址&#xff1a;http://iamkong.com/bord/bord.html重点*在FLASH load数据库数据&#xff0c;以及留言Post数据库这是FLASH与外面数据交互的方法之一 >点击下载{white白色}>点击下载{black 黑色}点击下载FLA源文件转载于:https://www.cnblog…

Consolidate Duplicate Conditional Fragments(合并重复的条件片段)

在条件表达式的每个分支上有相同的一段代码 if (isSpecialDeal()) {total price * 0.95;send(); } else {total price * 0.98;send(); } 重构&#xff1a;将这段重复代码搬移到条件表达式之外 if (isSpecialDeal()) {total price * 0.95; } else {total price * 0.98; }…

普华永道2030汽车产业报告 私家车真正Out了!

来源&#xff1a;智东西概要&#xff1a;随着新兴科技渗透汽车产业&#xff0c;电动化、智能化、共享化等趋势愈演愈烈。随着新兴科技渗透汽车产业&#xff0c;电动化、智能化、共享化等趋势愈演愈烈。科技企业、新造车企业杀入传统价值链&#xff0c;业界称之为汽车产业变革。…

C++学习之路 | PTA乙级—— 1001 害死人不偿命的(3n+1)猜想 (15分)(精简)

1001 害死人不偿命的(3n1)猜想 (15分) 卡拉兹(Callatz)猜想&#xff1a; 对任何一个正整数 n&#xff0c;如果它是偶数&#xff0c;那么把它砍掉一半&#xff1b;如果它是奇数&#xff0c;那么把 (3n1) 砍掉一半。这样一直反复砍下去&#xff0c;最后一定在某一步得到 n1。卡拉…

[转] TOUGH 的系列平面广告

转载于:https://www.cnblogs.com/temptation/archive/2006/08/09/471863.html

未来网络经济的99个趋势报告

来源&#xff1a; 199IT互联网数据中心概要&#xff1a;未来网络经济的99个趋势报告72%的全球CEO认为未来3年将比过去50年对其行业的影响更大&#xff1b;到2020年&#xff0c;平均每个人都会比与机器人有更多的对话&#xff1b;创新品牌的品牌价值升值比没有那么创新的品牌高9…

Replace Nested Conditional with Guard Clauses(以卫语句取代嵌套条件表达式)

函数中的条件逻辑使人难以看清正常的执行路径 double getPayAmount() {double result;if (isDead) {result deadAmount();} else {if (isSeparated) {result separatedAmount();} else {if (isRetired) {result retiredAmount();} else {result normalPayAmount()}}}retur…

C++学习之路 | PTA乙级—— 1002 写出这个数 (20分)(精简)

1002 写出这个数 (20分) 读入一个正整数 n&#xff0c;计算其各位数字之和&#xff0c;用汉语拼音写出和的每一位数字。 输入格式&#xff1a; 每个测试输入包含 1 个测试用例&#xff0c;即给出自然数 n 的值。这里保证 n 小于 10 ​100 ​​ 。 输出格式&#xff1a; 在一行…

预感

今早出门穿鞋的时侯&#xff0c;就觉得好像有什么不对劲&#xff0c;但是没有反应过来&#xff0c;坐车的时侯才发现原来是穿错鞋了&#xff0c;本来穿凉鞋的&#xff0c;穿成了皮鞋。当时就感觉头脑不够清醒&#xff0c;可能今天要不经意的犯错。 果然&#xff0c;下午…

Hinton:人类就是机器,绝妙的机器

编译 夏乙 唐旭量子位 出品 | 公众号 QbitAI概要&#xff1a;三十多年以来&#xff0c;Geoffrey Hinton一直徘徊在人工智能研究的边缘地带。1三十多年以来&#xff0c;Geoffrey Hinton一直徘徊在人工智能研究的边缘地带。他像一个局外人一样坚守着一个简单的观点&#xff1a;计…

Introduce Null Object(引入Null 对象)

一而再&#xff0c;再而三地检查对象是否null public class Site {private Customer customer;public Customer getCustomer() {return customer;} }public class Customer {private String name;private BillingPlan plan;private PaymentHistory history;public String getN…