我有一种感觉,这个if / else应该被重构,但我不确定我能做什么,或者我是否应该让它像它一样……

private String someReportUrl(HttpServletRequest request, HttpServletResponse response) {

String url;

if (isBackToReportsSummary(request)) {

url = SUMMARY_PAGE;

getReportsSummary(request, response);

} else if (isComingFromPageA(request)) {

url = getTabUrl(request, REPORT_URL_FOR_PAGE_A);

}

else {

url = "/standAlone/reportUrl.jsp";

}

return url;

}

基本上我有一个报告摘要页面,其中列出了三到四份报告.首先,如果条件是用户想要返回该页面,则第二个条件是用户选择此特定报告时的情况,第三个条件是用户选择此报告作为独立报告(而不是摘要页面) .

java if else重构_java – 如何重构这个有多个if / else语句的方法相关推荐

  1. java什么是重构 何时使用重构_Java 之重构现有系统实战(一)

    何时进行重构 重构可遵循三次法则:第一次做某件事时只管去做:第二次做类似的事会产生反感,但无论如何还是可以去做:第三次再做类似的事,你就应该重构,即 事不过三,三则重构.具体表现为:添加功能时重构.修 ...

  2. java 宕机监控_JAVA实现监测tomcat是否宕机及控制重启的方法

    本文实例讲述了JAVA实现监测tomcat是否宕机及控制重启的方法.分享给大家供大家参考.具体如下: Detector.java: import java.net.URL; import java.n ...

  3. Java入参关键字_Java基础17-成员变量、return关键字和多参方法

    1.成员变量 在类中声明的变量为成员变量 //Dog类 class Dog{ String name;//成员变量 } public class Test1{ public static void m ...

  4. java输入一个数字输出_java 输入一个数字,反转输出这个数字的值(实现方法)

    如下所示: package 第四天; import java.util.Scanner; public class 数字反转 { public static void main(String[] ar ...

  5. java wait源码_Java精通并发-透过openjdk源码分析wait与notify方法的本地实现

    上一次https://www.cnblogs.com/webor2006/p/11442551.html中通过openjdk从c++的底层来审视了ObjectMonitor的底层实现,这次继续来探究底 ...

  6. java 子类必须实现_Java学习之接口的子类必须实现接口的全部方法吗?

    接口的子类必须实现接口的全部方法吗? 接口的子类必须实现接口中全部的方法吗?答案:不是.原因如下: 如果子类是非抽象类,则必须实现接口中的所有方法: 如果子类是抽象类,则可以不实现接口中的所有方法,因 ...

  7. java -jar vm参数_java相关:运行jar程序时添加vm参数的方法

    java相关:运行jar程序时添加vm参数的方法 发布于 2020-3-15| 复制链接 下面小妖就为大家带来一篇运行jar程序时添加vm参数的方法.小妖觉得挺不错的,现在就分享给大家,也给大家做个参 ...

  8. java能否构成三角形_java中判断三个参数是否能构成三角形的方法

    java中判断三个参数是否能构成三角形的方法 发布时间:2020-06-25 14:02:58 来源:亿速云 阅读:171 作者:Leah 这篇文章将为大家详细讲解有关java中判断三个参数是否能构成 ...

  9. java 过滤微信昵称_java过滤微信昵称emoji表情与非emoji的问题解决方法

    import java.util.regex.Matcher; import java.util.regex.Pattern; /** * 过滤emoji表情与非emoji表情 * @author h ...

最新文章

  1. JavaScript Array常用方法
  2. Android内存分析和调优
  3. python获取原图GPS位置信息,轻松得到你的活动轨迹
  4. 联想继续为其硬件产品完善Linux支持
  5. 【码云周刊第 61 期】四款开源项目教你玩转微信游戏
  6. 工程师,你的钱究竟从哪来?
  7. [转]《谁让你是飞鸟我是鱼》by(晨曦)
  8. js代码错误监控代码
  9. [CF1105D]Kilani and the Game
  10. 突然出现 -bash: pod: command not found 的解决方法
  11. 极狐+华为,小鹏+大疆,极氪+mobileye,自动驾驶成为“风向标”
  12. matlab:读取图像序列
  13. PyQt5简易本地视频播放器
  14. bzoj5369 [Pkusc2018]最大前缀和
  15. Unity3D 游戏摄像机的环绕与拉近
  16. 盘点2017 CES展会所有亮眼黑科技 (下)
  17. r语言quantmond_R中的关于极值理论的包
  18. 许远东受邀上海管理科技论坛做《LTD数字化经营方法论》分享
  19. 面试常问:什么是红黑树?
  20. typecho插件编写教程7 - Helper类

热门文章

  1. MYSQL--一条SQL更新语句是如何执行的?
  2. 空间连接时计算总和_学习CALCULATE函数(六)丨帕累托之累计求和
  3. 知道接口地址 如何传数据_数据不知道如何可视化?一款工具推荐给大家
  4. threadlocal get为空_面试常见知识点:ThreadLocal
  5. 刚安装完的ubuntu安装谷歌浏览器
  6. C++ const vector的迭代器
  7. LaTeX表格字太贴近上面表线
  8. 检测系列--RCNN系列
  9. Python编程从入门到实践~文件写入
  10. mysql linux附加数据库文件夹,Linux全攻略--MySQL数据库配置与管理