偶然看到 Java 8 中, Objects 工具类中有一个一个判断传入的对象是否为 null 的方法,感觉有点萌啊。
public static boolean isNull(Object obj) {
return obj == null;
}
敢问各位小伙伴,这种方法为啥要搞到 jdk 里面呢,意义何在?
1
skydiver 2016-08-05 18:09:15 +08:00 1
Java8 支持了函数式编程,函数可以作为参数传入。
如果标准库不提供你就总得自己写 lambda ,太麻烦 |
2
skydiver 2016-08-05 18:10:40 +08:00 1
注释里都写了,为什么不仔细看了就来发帖。
* @apiNote This method exists to be used as a * {@link java.util.function.Predicate}, {@code filter(Objects::isNull)} |
3
youxiachai 2016-08-05 18:33:04 +08:00
估计到时候...函数式又有一波吐槽了...
|
4
ChiangDi 2016-08-05 18:41:06 +08:00 via Android
这不是萌
|
5
ChiangDi 2016-08-05 18:41:16 +08:00 via Android
这是原则
|
6
ChiangDi 2016-08-05 18:42:20 +08:00 via Android
估计又有人要来吐槽 npm 上两行代码也能做一个模块了
|
7
acoder2013 2016-08-05 18:55:04 +08:00
看看注释就知道每一个方法的意义
|
8
wander2008 2016-08-05 20:09:14 +08:00 via iPhone
我想你可能是想多了。就想记自己写个工具类判断一样的。
|
9
6IbA2bj5ip3tK49j 2016-08-05 20:18:48 +08:00
|
10
6IbA2bj5ip3tK49j 2016-08-05 20:19:03 +08:00
这个岂不是更加萌?
|
11
twoyuan 2016-08-05 20:24:27 +08:00
filter 的时候可以写成 Objects::isNull 看起来不是很爽嘛
|
12
Shura 2016-08-05 20:26:27 +08:00 via Android 1
楼主如果用过 lambda 表达式就知道了
|
13
shyling 2016-08-05 20:36:33 +08:00 1
ArrayList.stream.filter(Objects::isNull)
|
14
wizardforcel 2016-08-05 21:43:45 +08:00 2
@twoyuan 太长了, o -> o == null 岂不是更加爽?
|
15
ewBuyVmLZMZE 2016-08-05 21:57:43 +08:00
这个是用于函数式的,没有什么槽点,需要 用即可。
|
16
shimanooo 2016-08-05 22:32:37 +08:00 via iPhone
|
17
SoloCompany 2016-08-05 23:01:30 +08:00 via iPhone
kotlin 有 “ it ” 解决可读性问题, java 8 的话显然方法引用可读性更好
|
18
NullMan 2016-08-05 23:24:52 +08:00
|
19
ooonme 2016-08-06 00:32:49 +08:00 via iPhone
scala: 什么函数式,一边玩去
|
20
dreampursuer 2016-08-06 12:39:14 +08:00
groovy 更彻底
|
22
param 2016-08-26 09:30:50 +08:00
我仿佛又听到有人在背后偷偷 @我
|
23
ik1010 2016-09-06 12:31:18 +08:00
语义化用的吧,看来你没有用过 Guava
|