码迷,mamicode.com
首页 > 编程语言 > 详细

Java8 Lambda代码备份

时间:2017-07-07 13:18:23      阅读:144      评论:0      收藏:0      [点我收藏+]

标签:java8   util   dex   lam   string   rgs   code   google   out   

简单研究了一下,贴出来,相当于笔记

import java.lang.reflect.*;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
import com.google.gson.Gson;

public class Hello {

    public static void main(String[] args) throws NoSuchMethodException, SecurityException, IllegalAccessException, IllegalArgumentException, InvocationTargetException {

        try {
            // Java中Lambda表达式
            List<Student> list = new ArrayList<Student>();
            list.add(new Student("zhangsan", 20, "2"));
            list.add(new Student("lisi", 22, "2"));
            list.add(new Student("zhangjie", 25, "3"));
            list.add(new Student("zhangjie", 40, "3"));

            // 循环赋值,增加2岁
            list.forEach(item -> item.setAge(item.getAge() + 2));

            // 循环输出年龄
            list.forEach(item -> System.out.println(item.getAge()));

            // 总数、最大值、最小值
            int ages = list.stream().mapToInt(f -> f.getAge()).sum();
            int maxAge = list.stream().mapToInt(f -> f.getAge()).max().getAsInt();
            System.err.println("总年龄是:" + ages);
            System.err.println("最大年龄是:" + maxAge);

            // 分组
            list.stream().collect(Collectors.groupingBy(Student::getName, Collectors.toList()))//
                    .forEach((name, fooListByName) -> System.out.println(name + " " + new Gson().toJson(fooListByName)));

            list.stream().collect(Collectors.groupingBy(Student::getName, Collectors.counting()))//
                    .forEach((name, count) -> System.out.println(name + " " + count));

            list.stream().collect(Collectors.groupingBy(Student::getName, Collectors.toList()))//
                    .forEach((name, ls) -> System.out.println("姓名:" + name + ",最大年龄" + ls.stream().mapToInt(f -> f.getAge()).max().getAsInt()));
        } finally {
        }

    }

}

 

Java8 Lambda代码备份

标签:java8   util   dex   lam   string   rgs   code   google   out   

原文地址:http://www.cnblogs.com/duanjt/p/7131255.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!