雪洗中关村

导航

list 转 map java8

 

 

 // Arrays.asList("a:1.0", "b:2.0", "c:3.0")   -->   Map {a=1.0, b=2.0, c=3.0}
        Map<String, Double> kvs = new HashMap<>();
        Arrays.asList("a:1.0", "b:2.0", "c:3.0")
                .stream()
                .map(elem -> elem.split(":"))
                .forEach(elem -> kvs.put(elem[0], Double.parseDouble(elem[1])));
        System.out.println(kvs.toString()); //

        Map<String, Double> kvs2 =
                Arrays.asList("a:1.0", "b:2.0", "c:3.0")
                        .stream()
                        .map(elem -> elem.split(":"))
                        .filter(elem -> elem.length==2)
                        .collect(Collectors.toMap(e -> e[0], e -> Double.parseDouble(e[1])));

        System.out.println(kvs2.toString()); //

 

posted on 2019-09-25 18:45  雪洗中关村  阅读(430)  评论(0编辑  收藏  举报