【发布时间】:2018-08-14 10:18:02
【问题描述】:
我之前用过:
List<Person> person = UserDB.getUserDetails();
Person p = person.get(0); // index of first position
System.out.println(p.getFirstName()); // sometime i am getting
// NULL pointer issue if person object is null
在 Java 8 中,我尝试使用 map(Person::new)。它导致了这个问题。
person.stream().limit(1).map(Person::new).
我该如何实施?
【问题讨论】:
-
为什么要使用流呢?应该是
.map(Person::getFirstName).forEach(System.out::println) -
那么,您的问题是什么?
UserDB.getUserDetails()在列表中返回空元素? -
如果
List中的第一个Person是null,您可以使用Optional方法返回一个空的Person- 假设您正在尝试这样做。从上下文看不是特别清楚。 -
我需要从列表中获取第一人称对象以进行进一步处理。这里我只是打印。
-
为什么
null对象首先被放入列表中?这意味着什么?也许不应该。
标签: java list java-8 java-stream