根据不同参数调用不同方法该怎么设计?

2020-05-15 17:20:45 +08:00
 sandman511
    public String selectById(Integer id,Boolean b) {
        return result = b ? mapper.selectXXXById(id) :
        	             mapper.selectYYYById(id);
    }

请教下各位 遇到上面这种需求 该怎么设计代码呢

1273 次点击
所在节点    问与答
6 条回复
mlxy123123
2020-05-15 18:06:31 +08:00
图上的写法有什么问题吗?

要么就用继承+方法重载的方式做
Brucepac
2020-05-15 18:26:05 +08:00
策略模式
zxCoder
2020-05-15 20:57:49 +08:00
if if if if 就完事了
oneisall8955
2020-05-15 21:20:24 +08:00
就当前来说,两个分支,if 就行了,后期参数多了,分支多了,考虑重构成工厂+策略模式。先不要急着封装,否则只会增加代码复杂
wangyanrui
2020-05-15 21:23:10 +08:00
就两个分支,先这么写着,提早优化啥万恶之源
wangyanrui
2020-05-15 21:23:27 +08:00
就两个分支,先这么写着,提早优化是万恶之源

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/672114

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX