Java8新特性
Java8的新特性学习介绍,包含函数式编程、函数式接口、Stream API、Date Time API、Optional
咸鱼老罗
干活人
展开
-
JAVA8新特性(一)——函数性编程
函数式编程函数式编程可以使java能使用Lambda表达式进行函数式编程。函数式编程实际上是实现接口的匿名函数。Lambda的表达式如下(参数列表) -> {函数体}如Runnable的Lambda写法。Runnable run = ()-> { System.out.println("xxxx");};接口要想能用Lambda实现,接口必须是函数式接口,即只有一原创 2017-09-11 18:23:48 · 462 阅读 · 0 评论 -
JAVA8新特性(二)——通用函数接口
java..util.function包中是通用性函数接口,它满足一下几种基本的使用。 函数型T ->R,完成参数类型T向结果类型R的转换。核心函数接口Function、operater 判断型T->boolean,核心函数接口Predicate 消费型T->void,核心函数接口Consumer供给型void->T,核心函数接口Supplier同时原创 2017-09-13 17:31:47 · 710 阅读 · 0 评论 -
JAVA8新特性(三)——方法引用
我们之前写Lambda表达式,如果Lambda表达式有对应方法,我们可以直接引用方法作为Lambda表达式。这种做法叫做方法引用。方法引用用”::”分隔。例子@Testpublic void methodRefTest() { MethodReference.Class1 class1 = new MethodReference.Class1(); double resu原创 2017-09-15 17:52:27 · 448 阅读 · 0 评论 -
JAVA8新特性(四)——Stream API
Stream使用来处理list、array这些集合的新API。链式编程,使用Stream处理代码更简洁。创建流steam() : 创建普通流。parallelStream: 创建并行流。并行流是对流的处理是并行的,不是顺序的。public List codelist = Arrays.asList("1", "2", "3", "4", "", "5", "6");public原创 2017-09-15 18:00:20 · 434 阅读 · 0 评论 -
JAVA8新特性(五)——DateTime API
Date Time API老版问题以前时间类存在的问题1.date是可变的,是线程不安全的。2.类比较多,既有java.util.Date、又有java.sql.Date,同时Data的format和parse又在java.util.txt下。新版特性1.不变性:在新的时间API中,所有的类都是不变的,加上final。2.清晰:每个类中都定义了parse和format方原创 2017-09-19 17:50:59 · 530 阅读 · 0 评论 -
JAVA8新特性(六)——Optional API
Optional对null提供了一个更优雅的实现。比如我们要判断str是否为空,为空则赋值为defalut,用之前的写法是这样:if(str!=null && !“”.equlas(str)) { } else { str = “defalut”}但是,使用OprionalOptional. ofNullable(str). orElse(“defalut”);Opti原创 2017-09-20 18:02:52 · 2655 阅读 · 0 评论