0
我找到的所有示例都使用其他类型信息来推断Stream.empty()
的类型。似乎应该有语法来让我直接投射它。这个例子的工作原理:如何在Java 8中投射Stream.empty()?
import java.util.*;
import java.util.stream.*;
class OptionalBasics {
static void test(Optional<String> optString) {
if(optString.isPresent())
System.out.println(optString.get());
else
System.out.println("Nothing inside!");
}
public static void main(String[] args) {
Stream<String> s = Stream.empty();
test(s.findFirst());
test(Stream.of("Epithets").findFirst());
}
}
/* Output:
Nothing inside!
Epithets
*/
但是请注意,我不得不以提供类型信息Stream.empty()
单独创建s
。我想在调用只需创建它 test()
,这样的事情(不工作):
test(Stream<String>.empty().findFirst());
是否有在调用Stream.empty()
设置类型语法?
优秀 - 非常感谢! – user1677663