List<String> listStr = new ArrayList<String>();
if(listStr.size == 0){
}
与
if(listStr.isEmpty()){
}
在我看来,使用
listStr.isEmpty()
的好处之一是它不检查列表的大小,然后将其与零进行比较,它只是检查列表是否为空。我在代码库中经常看到if(listStr.size == 0)
而不是if(listStr.isEmpty())
,还有其他优点吗?是否存在我不知道以这种方式检查的原因? 最佳答案
this question的答案可能会为您提供答案。基本上,在某些列表的实现中,isEmpty()
方法检查大小是否为零(因此,从性能的角度来看,它们实际上是等效的)。但是,在其他类型的列表(例如链接列表)中,计数项目比检查其是否为空需要更多的时间。
因此,使用isEmpty()
方法检查列表是否为空总是很方便的。在所有类型的列表中提供这种方法的原因也与接口(interface)有关,因为ArrayList
,Vector
和LinkedList
实现相同的List
接口(interface):this interface具有isEmpty()
方法;然后,每种特定类型的列表都提供了isEmpty()
方法的实现。
关于java - if(listStr.size == 0){与if(listStr.isEmpty()){,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9341740/