最近在项目中看到如下代码:
List<User> userList = userDao.selectByUserId(user.getId());
List<Long> userIds = userList.stream().map(User::getId).collect(Collectors.toList());
换成现在常用的写法就是:
List<User> userList = userDao.selectByUserId(user.getId());
List<Long> userIds = new ArrayList<>();
for (User user : userList) {
userIds.add(user.getId());
}
理解:根据数据库查询,把user表中的数据查询出来,放到userList 列表中,然后去筛选userList 列表中的Id,并把这些Id放到一个新的列表userIds中。