首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

2018-11-08 杀死If Else switch case(策略模式+工厂模式+map)套餐 Kill 项目中的switch case

+map)套餐 Kill 项目中的switch case 接手新任务:接入第三家存证机构,看之前的代码使用了swith case判断使用哪家存证机构,每家存证机构的实现逻辑不一样 代码的坏味道:多层swich...多层swich case不好维护,是时候应该重构了, 优化前的代码 为了便于理解,举个没有业务逻辑的例子,基于这个例子上进行优化。...) { System.out.println("吃西瓜了,但是还得弄把水果刀切一下先"); } } 复制代码 这个例子代码量不是很大,但是实际项目中的场景肯定没有这么简单,多重swich...public interface Fruit { void eat(); } 复制代码 Apple.java public class Apple implements Fruit {...粗暴的讲,工厂模式就是把创建同一类型对象逻辑写在了一个方法里 FruitFactory .java public class FruitFactory { public static Fruit

1.6K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Java流程控制语句-分支结构(选择结构)

    System.out.println("星期日"); break; default: System.out.println("你输入的数字有误"); break; } } } 注意事项 1、swich...case子句中的值必须是常量,且所有case子句中的值应是不同的; 3、default子句是可任选的,当没有匹配的case时,执行default; 4、break语句用来在执行完一个case分支后使程序跳出swich...语句块;如果没有break程序会顺序执行到swich结尾; if分支结构和switch分支结构区别 if和swich语句很想,如果判断的具体数值不多,而且复合byte、short、int、char这四种类型...建议使用swich语句,因为效率稍高; 其他情况:对区间进行判断,对结果为boolean类型进行判断,使用if,if的使用范围比较广泛。

    46220

    <基础语法(Java三大程序控制结构)>

    本篇博客主要讲解Java基础语法中的三大结构,一种顺序结构、两大分支结构、四大循环结构、以及键盘的输入与输出。 大家好,本人是普通一本的在校大学生一枚,目前在学习java。...喜欢我的兄弟姐妹们以及也想复习一遍java知识的兄弟姐妹们可以关注我呦,我会持续更新滴,并且追求完整。 望支持!!!!!!一起加油呀!!!!...最好加上大括号. 2.2 switch 语句 语法格式(swich-case) swich(表达式){ case 常量值1:{ 语句1; break;...会失去 "多分支选择" 的效果 4.switch 不能表达复杂的条件,比如swich中表达式不能是num > 10 && num 20 5.switch 虽然支持嵌套, 但是很丑,一般不推荐~ 综上,...参考代码: import java.util.Random; import java.util.Scanner; public class Main { public static void

    7210

    Scala专题系列 (八) : 模式匹配

    模式匹配的类型分为 : 常量模式匹配 变量模式匹配 构造器模式 序列模式 元组模式 变量绑定模式 模式匹配 - 常量模式 所谓常量模式匹配就是在case后面跟着的是常量,如同java中的swich语句...} 这个就是scala中模式匹配的语法结构, 首先变量.match(选择器) 后面跟着一个花括号, 括号里面case指定的匹配项 , 而 => 右面指定的是表达式 , 在语句中 case _ 等同于java...中swich语句的default ,如果匹配项都不符合要求,那么就返回一个默认值 模式匹配 - 变量模式 所谓常量模式匹配就是在case后面跟着的是变量 实例 : object Demo{ def...元组模式:匹配元祖 类型模式:匹配变量的类型 Option 类型 Option类型在Scala程序中经常使用,可以将其与Java中可用的null值进行比较,表示null值。...例如,java.util.HashMap的get方法返回存储在HashMap中的值,如果没有找到值,则返回null。 假设我们有一种基于主键从数据库中检索记录的方法。

    85320
    领券