使用 Java 8 可选字符串列表作为输出
我想对返回 List 的方法使用 Optional
假设函数是
public Output getListOfSomething() {
// In some cases there is nothing to return and hence it makes sense to have return
// type as Optional here
}
因此,该函数如下所示:
public Optional<List<String>> getListOfSomething() {
// return something only when there is some valid list
}
现在我想做一些事情,如果列表存在,所以像这样:
Optional<List<String>> listOfSomething = getListOfSomething();
int size = 0;
listOfSomething.ifPresent(size = listOfSomething.get().size());
我是 Optional 的新手,并且已经阅读了有关 Optional 的文章,似乎这应该可以工作,但是在我的 IDE 中遇到了语法错误:
方法 ifPresent 不适用于参数(void)。
我想从开发人员那里得到一些帮助,他们可能更精通java 8中的lamdas。