JAVA8新特性
托尼吴
退役大厂架构师
展开
-
java8新特性之 Stream Api 之 规约 和收集(四)
/** *********************************规约********************************//** * 规约 * * reduce(T identity ,BinaryOperator) / reduce - 可以将流中元素冉福结合起来,得到一个值 */@Testpublic void test11() { List&...原创 2018-07-05 15:00:20 · 1035 阅读 · 0 评论 -
Stream Api 的总结 创建 中间操作 中止操作
在学习Stream Api 必须要了解 Lambda 表达式的使用,因为Stream是建立在Lambda上面一 : Lambda四大核心接口,也叫函数式接口/** * java8四大核心函数式接口 * Consumer<T> :消费接口 * void accept(T t); * ...原创 2018-07-05 11:21:48 · 414 阅读 · 0 评论 -
java8新特性之 StreamApi Stream流的中止操作(三)
/*************************************Stream流的中止操作******************************************************//** * 查找与匹配 * * allMatch - 检查是否匹配所有元素 * anyMatch - 检查是否至少匹配一个元素 * noneMatch - 检查是否没有匹配...原创 2018-07-05 11:15:53 · 843 阅读 · 0 评论 -
java8新特性之 StreamApi Stream流的中间操作(二)
多个中间操作可以连接起来形成一个流水线,除非流水线上触发中止操作,否则中间操作不会执行任何的处理,而在中止操作时一次性全部处理/*********************************************** Stream流的中间操作 ***************************************************************//...原创 2018-07-04 15:48:40 · 1509 阅读 · 0 评论 -
java8新特性之 StreamApi 流的创建(一)
流(Stream):是数据渠道,用于操作数据源所生产的元素序列“集合江的是数据,流讲的是计算”注意: 1:Stream 自己不会储存元素。 2:Stream 不会改变源对象,相反他们会返回一个持有结果的新Stream。 3:Stream 操作是延迟执行的,这意味着他们会等到需要结果的时候才去执行。Stream的操作三个步骤. 创建Stream一个数据源(如:集合,数组),获取一个...原创 2018-07-04 11:09:34 · 211 阅读 · 0 评论 -
java8新特性之 Lambda表达式之四大核心接口(二)
package com.example.jedis.test.test2;import org.junit.Test;import org.junit.runner.RunWith;import org.springframework.boot.test.context.SpringBootTest;import org.springframework.test.context.juni...原创 2018-06-28 18:00:08 · 265 阅读 · 0 评论 -
java8新特性之 Lambda表达式(一)
在学习Lambad表达式前有必要学习一下匿名内部类的使用,因为可以将lambda理解为匿名内部类方式的一种升级/** * 优化方式二 * 匿名内部类 * */@Testpublic void test1() { test02( userList, new FilterUser <Use>( ) { @Override public B...原创 2018-06-28 16:08:12 · 203 阅读 · 0 评论 -
通过对类中的属性过滤,学习策略模式和java8新特性对属性过滤的支持
在传统的属性过滤中,如果我们要对一个类中的属性进行过滤,直接的做法就是之间判断,当对一个类的多个属性进行过滤时,需要写很多方法,逐个去判断,这样就增加了冗余的代码数量。final List<Use> userList = Arrays.asList( new Use( "a",1,35 ), new Use( "b",3,25 ), ...原创 2018-06-28 11:12:11 · 411 阅读 · 0 评论 -
java8新特性之 Lambda表达式之 方法引用 和构造器引用(三)
package com.example.jedis.test;import org.junit.Test;import org.junit.runner.RunWith;import org.springframework.boot.test.context.SpringBootTest;import org.springframework.test.context.junit4.Spr...原创 2018-07-03 16:04:07 · 297 阅读 · 0 评论 -
java8新特性之Optional 的用法
/** * Optional.of(T t) : 创建一个Optional实例 * Optional.empty() : 创建一个空的Optional实例 * Optional.ofNullable(T t) : 若t不为null 创建Optional实例,否则创建空实例 * isPresent() : 判断是否包含值 * orElse(T t) : 如果调用对象包含值,就返回...原创 2018-07-09 17:46:02 · 388 阅读 · 0 评论 -
java8 之 forEach遍历 (遍历)
** * * @Author : Wukn * @Date : 2018/6/7 * * java8 List forEach */public class ListTest { public static void main(String[] args) { forEach03(); } public static void fo...原创 2018-06-07 14:24:15 · 8843 阅读 · 0 评论 -
传统的排序和java8新的排序比较 (排序)
1:传统排序方法/** * 常规升排序 */public static void sortTest() { List<User> list = new ArrayList <>( ); list.add( new User( "a",1 ) ); list.add( new User( "f",6 ) ); list.add( new...原创 2018-06-07 10:58:40 · 749 阅读 · 2 评论 -
java8 list求最大值、最小值、平均值、求和、中位数、属性排序、去重
import org.junit.Test;import java.text.SimpleDateFormat;import java.util.*;import java.util.stream.Collectors;import static java.util.Comparator.comparingLong;import static java.util.stream.Coll...转载 2019-02-22 19:08:29 · 4764 阅读 · 0 评论