java8 特性 - map

作者: 良人与我 | 来源:发表于2018-12-17 07:18 被阅读1次

map 是 转化的意思,将一个类转化为另一个类
例如这里有两个实体类 一个是 animal 一个是 toy

@ToString
@Data
@AllArgsConstructor
public class Animal {
    private String name;
    private Integer age;
}


@ToString
@Data
public class Toy {
    private String name;
}

初始化一个 animal的list

List<Animal> animals = Lists.newArrayList ();
animals.add (new Animal ("cat",12));
animals.add (new Animal ("dog",20));
animals.add (new Animal ("wolf",5));

先来一个简单的例子,将提取animal 的一个属性将 List<Animal> map 成 List<String>

List<String> nameList = animals.stream().map(t-> t.getName()).collect(Collectors.toList());
System.out.println(nameList);

结果

[cat, dog, wolf]

将 List<Animal> map 成 List<Toy>

List<Toy> toys = animals.stream().map(t-> {
            Toy toy = new Toy();
            toy.setName(t.getName());
            return toy;
        }).collect(Collectors.toList());

System.out.println(toys);

结果

[Toy(name=cat), Toy(name=dog), Toy(name=wolf)]

在java web 应用中经常会将从数据库中查到的 entity 转变成vo 类,应用此方法就挺方便。

相关文章

网友评论

    本文标题:java8 特性 - map

    本文链接:https://www.haomeiwen.com/subject/mnmihqtx.html