java8中 lambda语法和stream
来源:互联网 发布:filter 过滤css和js 编辑:程序博客网 时间:2024/05/18 03:03
java8最大的特性就是lambda和stream API
lambda写的好可以极大的减少代码冗余,同时可读性也好过冗长的内部类,匿名类。
Stream 不是集合元素,它不是数据结构并不保存数据,它是有关算法和计算的,它更像一个高级版本的 Iterator。Iterator只能一个一个遍历元素并对其执行某些操作;而对于 Stream,用户只要给出需要对其包含的元素执行什么操作,Stream 会隐式地在内部进行遍历,做出相应的数据操作。
Stream 是单向的,数据只能遍历一次,遍历过一次后即用尽了,就好比水流流过,一去不复返。
按钮的点击事件由原来的集成变成现在这样
findViewById(R.id.btn1).setOnClickListener(view -> button1());
更像是指针指向某个操作,但其实不然
//平方数 List<Integer> nums = Arrays.asList(1, 2, 3, 4); List<Integer> squareNums = nums.stream() .map(n -> n * n) .collect(Collectors.toList());//这段代码生成一个整数 list 的平方数 {1, 4, 9, 16}。 squareNums.forEach(System.out::println);
// 1. Individual values Stream stream = Stream.of("a", "b", "c");// 2. Arrays String [] strArray = new String[] {"a", "b", "c"}; stream = Stream.of(strArray); stream = Arrays.stream(strArray);// 3. Collections List<String> list = Arrays.asList(strArray); stream = list.stream(); list.forEach(p -> System.out.println(p));
List<String> wordList=Arrays.asList("a","e","q"); //转换大写 List<String> output = wordList.stream() .map(String::toUpperCase) .collect(Collectors.toList());//这段代码把所有的单词转换为大写。 output.forEach(p -> System.out.println(p));
// 筛选偶数Integer[] sixNums = {1, 2, 3, 4, 5, 6};Integer[] evens = Stream.of(sixNums) .filter(n -> n%2 == 0) .toArray(Integer[]::new);System.out.println("取偶");for(int i=0;i<evens.length;i++){ System.out.println(evens[i]);}
几个简单的示例
阅读全文
0 0
- java8中 lambda语法和stream
- Java8 的lambda 和 Stream
- java8 Lambda 与 Stream
- Java8 Lambda 表达式、Stream
- Java8 Stream Lambda
- Java8 stream语法
- Java8 Stream语法详解
- Java8-Stream语法详解
- Java8 Stream语法
- Java8: Lambda表达式语法
- java8 lambda表达式-语法
- JAVA8 Lambda 语法学习
- Java8 Lambda语法 示例
- java8-lambda语法
- Java8新特性——Lambda表达式(二)Stream语法详解
- Java8之Stream语法详解
- java8之Stream语法详解
- Java8中stream用法
- WebService
- ZOJ3983+3992+3993
- 统计学习方法 1-统计学习方法概论
- 前端基础之HTML
- Python学习笔记1
- java8中 lambda语法和stream
- 【多线程】JAVA——Runnable接口实现[一]
- 仅自己电脑识别不了自己U盘,却能识别其他U盘
- android点击链接打开应用对应界面
- 使用Swiper4插件问题
- 求最小环
- ios 禁止将页面中的一连串数字识别为电话号码
- Java8 lamada表达式的简单使用
- SpringMVC个人零碎总结