Java8 教程第十一章之Stream List转Map

本套JAVA8教程由于是有英文翻译过来的,如果有翻译不对的地方还请多多包涵。

本节课先简单的介绍下Java8有哪些新特性,对于Java6/7版本做出哪些更改.那废话不多说,赶紧开始今天的课程吧.

本节课相对简单很多,看代码吧,先实例化一个用户对象

User.java

  @Data
  public class Hosting {
    private int Id;
    private String name;
    private Date createdDate;
}

Collectors.toMap()函数使用

  public static void main(String[] args) {

        List list = new ArrayList<>();
        list.add(new User(1, "liquidweb.com", new Date()));
        list.add(new User(2, "linode.com", new Date()));
        list.add(new User(3, "digitalocean.com", new Date()));
        //例子 1
        Map result1 = list.stream().collect(
                Collectors.toMap(User::getId, User::getName));
        System.out.println("例子 1 : " + result1);
        //例子 2
        Map result2 = list.stream().collect(
                Collectors.toMap(x->x.getId(), x->x.getName()));
        System.out.println("例子 2 : " + result2);
    }

这两种写法效果是一样的,只是第一种更为简洁而已
输出

例子 1 : {1=liquidweb.com, 2=linode.com, 3=digitalocean.com}
例子 2 : {1=liquidweb.com, 2=linode.com, 3=digitalocean.com}

本节课是不是太简单了呢. 那就赶紧动手写下吧.

欢迎小伙伴留言哦

你可能感兴趣的:(Java8 教程第十一章之Stream List转Map)