【发布时间】:2018-12-20 07:09:04
【问题描述】:
如果我们有下面这样的场景,处理 null 的最佳方法是什么
//mocking for demonstraton
studentsByCourseRoster.setUsers(null);
studentsByCourseRoster.getUsers().stream().forEach(user -> {
final UserDTOv2 userDTO = new UserDTOv2();
userDTO.populateUserDataFromUserDTO(user, groupedUsers);
users.add(userDTO);
});
【问题讨论】:
-
你要在哪里处理
null? -
if(studentsByCourseRoster.getUsers() != null)怎么样? -
只是不要将用户设置为
null。允许List变为null(而不是空的)是软件设计缺陷的标志。与其在阅读端添加变通方法,不如修复设计。