好的,如果你想检查一个列表是否为空
我们需要做一些类似于
if(! mylist.isEmpty())
这会影响代码的可读性,那么我们如何以可读的方式编写相同的内容,调用条件检查的否定。
其中一种可能是拥有一个静态辅助函数,例如:
static boolean not(boolean condition) { return !condition;}
这个主意有多糟糕?Apache Common或Guava等是否有其他选项?或者你是否还有其他实现方法?
好的,如果你想检查一个列表是否为空
我们需要做一些类似于
if(! mylist.isEmpty())
这会影响代码的可读性,那么我们如何以可读的方式编写相同的内容,调用条件检查的否定。
其中一种可能是拥有一个静态辅助函数,例如:
static boolean not(boolean condition) { return !condition;}
这本身并不是一个坏主意,也不会影响任何事情。
然而,我认为很多人会不同意您关于使用 !
来否定事物的正常方式“难以阅读”的观点。
if ( ! list.isEmpty() )
与
if ( not( list.isEmpty() ) )
在我看来并没有太大区别。
!
表示“not”,并在脑海中读作“not”。也许你还不习惯,但它会变得自然。使用not()
会降低可读性,因为当我阅读这段代码时,我会想知道not()
可能会做什么,我不得不检查它是否只是标准!
运算符的专有别名。 - JB Nizet
CollectionUtils#isNotEmpty
吗? - user180100!
这么无用,甚至在这里都不能使用,那它到底是用来干什么的? - Mohsen Kamrani