1.将对象集合中的某个属性取出组成一个单独的新的集合
有很多时候我们会遇到这样的场景,就是要将一个list中的某一个元素中的某一属性单独拿出来放在一个新的list里面,这时候,我们就可以用以下的方法来进行实现:
List<User> userList = new ArrayList<>();
List<String> nameList= userList.stream().map(User::getName).collect(Collectors.toList());
2.将对象集合中的某个属性取出,用逗号拼接成一个字符
2.1 可以foreach循环直接拼接对象该属性
//用逗号分割
StringJoiner stringJoiner = new StringJoiner(",");
userList.forEach(user -> {
//将实体中的某个字段获取到 添加到stringJoiner
stringJoiner.add(user.getName());
});
//最终得到的字符串
String toString = stringJoiner.toString();
2.2 进行1操作(将某个属性取出组成新的集合)后,将新的集合用逗号拼接
//利用Guava的Joiner
String nameListStr = Joiner,on(",").join(nameList);
//利用Apache Commons的StringUtils
String nameListStr = StringUtils.join(nameList.toArray(), ",");
3.将用逗号拼接的字符串转换成String集合
String str = "hudson,zhuang,lisa";
List<String> result = Arrays.asList(str.split(","));
4.将对象集合利用Java8新特性按照某一属性进行分组
//例如这里将User类的集合userList按照性别进行分组
Map<String, List<User>> groupBySex = new HashMap<>();
groupBySex = userList.stream().collect(Collectors.groupingBy(User::getSex));
//获得男性集合
List<User> manList = groupBySex.get("男");
//写循环
groupBySex.keySet().for
纯粹记录一下