锁定老帖子 主题:残酷的非空if判断
精华帖 (0) :: 良好帖 (0) :: 新手帖 (6) :: 隐藏帖 (1)
|
|
---|---|
作者 | 正文 |
发表时间:2011-05-17
最后修改:2011-05-17
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2011-05-17
你要觉得不爽 专门 封装 一个 方法好 了
数据有效性判断是 必须的 就跟 非运行异常 需要处理一样 |
|
返回顶楼 | |
发表时间:2011-05-17
一个东西叫design by contact
|
|
返回顶楼 | |
发表时间:2011-05-17
NullObject 对于有出空可能的
对于不应该出空的地方加断言 |
|
返回顶楼 | |
发表时间:2011-05-17
语言缺陷,基本无解。
某些情况可以用 @NotNull 和 @Nullable 使代码清晰些 ⋯⋯ 但是不会有太大帮助。 guava 的 Strings.isNullOrEmpty() 也有些用。 如果用 groovy,很多情况就能用 .? 运算符简化,读和写都舒服很多。 如果用 scala,用 option 传参数可以强制实现的人做空判断,可以减少一些疏忽或者偷懒造成的问题⋯⋯ 最完美的解决方法就是用一种没有 null / nil 值的语言,如 haskell,不过那些靠写 if(null != xx) 吃饭的人肯定不同意⋯⋯ |
|
返回顶楼 | |
发表时间:2011-05-17
http://en.wikipedia.org/wiki/Null_Object_pattern
|
|
返回顶楼 | |
发表时间:2011-05-17
如果php
if (!$xx) { ..... } |
|
返回顶楼 | |
发表时间:2011-05-17
chenchuan 写道 经常我们在开发过程中会出现很多if(xx==null)等这样的判断,而且基本上会占据大量的这样非空的这样的判断,对于编码来说很反感,但是在代码中如果不进行这样的判断又会造成程序的bug, 大家有什么好的想法能解决这个问题,大家平时的编码习惯是怎么样的 一起讨论
if(null==xx) { } //建议常量前置 if(null!=name && name.equals("ITEYE")) { } 有时可能少写了判断 if("ITEYE".equals(name)) { } |
|
返回顶楼 | |
发表时间:2011-05-17
纠正两个笔误
ray_linn 写道 一个东西叫design by contact
contact应为contract night_stalker 写道 ...
如果用 groovy,很多情况就能用 .? 运算符简化,读和写都舒服很多。 ... .?应为?. |
|
返回顶楼 | |
发表时间:2011-05-17
还是js的写法轻松点
|
|
返回顶楼 | |