Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/354.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将Iterables强制转换到集合会迭代所有元素吗?_Java_Guava - Fatal编程技术网

Java 将Iterables强制转换到集合会迭代所有元素吗?

Java 将Iterables强制转换到集合会迭代所有元素吗?,java,guava,Java,Guava,以下是Iterables.isEmpty()的源代码 公共静态布尔值为空(Iterable Iterable){ if(集合的iterable instanceof){ return((Collection)iterable.isEmpty(); } return!iterable.iterator().hasNext(); } 我想知道Iterables.isEmpty()方法是否迭代所有元素,如果给定iterable参数是一种Set类型,它扩展了集合。将Iterable转换为Collect

以下是Iterables.isEmpty()的源代码

公共静态布尔值为空(Iterable Iterable){
if(集合的iterable instanceof){
return((Collection)iterable.isEmpty();
}
return!iterable.iterator().hasNext();
}
我想知道
Iterables.isEmpty()
方法是否迭代所有元素,如果给定
iterable
参数是一种
Set
类型,它扩展了
集合
。将
Iterable
转换为
Collection
是否会导致完全迭代?若然,原因为何?若否,原因为何

我想知道
Iterables.isEmpty()
方法是否会在给定
iterable

否:
Iterables.isEmpty()
。它永远不会超过第一个元素

将Iterable强制转换为集合是否会导致完全迭代

不。强制转换对对象没有任何作用,它只是告诉编译器“相信你”,它可以被视为子类,而不是超类

发件人:

演员表情。。。在运行时检查引用值是否引用其类与指定引用类型或引用类型列表兼容的对象

我想知道
Iterables.isEmpty()
方法是否会在给定
iterable

否:
Iterables.isEmpty()
。它永远不会超过第一个元素

将Iterable强制转换为集合是否会导致完全迭代

不。强制转换对对象没有任何作用,它只是告诉编译器“相信你”,它可以被视为子类,而不是超类

发件人:

演员表情。。。在运行时检查引用值是否引用其类与指定引用类型或引用类型列表兼容的对象

public static boolean isEmpty(Iterable<?> iterable) {
    if (iterable instanceof Collection) {
      return ((Collection<?>) iterable).isEmpty();
    }
    return !iterable.iterator().hasNext();
}