Java 8新特性简介:
Java 8(又称为jdk1.8)是Java语言开发的一个主要版本。Java 8是oracle公司于2014年3月发布,就可以看成是Java 5以来最具革命性的版本。Java 8为Java语言、编译器、类库、开发工具与JVM带来了大量的新特性。
优点:
1)速度更快
2)代码更少(增加了新的语法:Lambda 表达式)
3)强大的Stream API
4)便于并行
5)最大化减少空指针异常:Optional
6)Nashorn引擎,允许在JVM上运行JS应用
并行流与串行流:
并行流就是把一个内容分成多个数据块,并用不同的线程分别处理每个数据块的流。相比较串行的流,并行的流可以很大程度上提高程序的执行效率。
Java 8中将并行进行优化,可以很很容易的对数据进行并行操作。
Stream API可以声明性地通过parallel()与sequential()在并行流与顺序流之间进行切换。
1)使用多核对数组进行排序:
Arrays.parallelSort(numbers);
2)根据特定地条件(比如:素数和非素数)对数组进行分组:
Map<Boolean,List<Integer>> groupByPrimary=numbers.parallelStream().collect(Collectors.groupingBy(s->Utility.isPrime(s)));
3)对数组进行过滤:
Integer[] prims=numbers.parallelStream().filter(s->Utility.isPrime(s)).toArray();
Lambda表达式:
Lambda是一个匿名函数,可以把Lambda表达式理解为是一段可以传递的代码(将代码像数据一样进行传递)。使用它可以写出更简洁、更灵活的代码。作为一种更紧凑的代码风格,使Java的语言表达能力得到了提升。