当前位置: 首页 > 最新文章 > 正文

java常用功能接口

从java 8推出支持lambda已经很多年,但很多人在程序中对lambda的使用还是不够充分.lambda表达式可以很方便的将当前上下文中的变量、需求的计算逻辑封装成功能接口的实现;习惯的用这种方法划分、拆解程序,可以使得程序逻辑更加清晰.而且在标准库在很多类上也增加了支持lambda表达式的方法,在有类似的需求时可以方便的使用,比如AtomicLong.getAndAccumulate.下面是

admin

从java 8推出支持lambda已经很多年,但很多人在程序中对lambda的使用还是不够充分.lambda表达式可以很方便的将当前上下文中的变量、需求的计算逻辑封装成功能接口的实现;习惯的用这种方法划分、拆解程序,可以使得程序逻辑更加清晰.而且在标准库在很多类上也增加了支持lambda表达式的方法,在有类似的需求时可以方便的使用,比如AtomicLong.getAndAccumulate.下面是一些常用的功能接口泛型的Function、Predicate、Supplier、Consumer、UnaryOperator、BiFunction、BiFunction、BiPredicate、BiS

从java 8推出支持lambda已经很多年,但很多人在程序中对lambda的使用还是不够充分.

lambda表达式可以很方便的将当前上下文中的变量、需求的计算逻辑封装成功能接口的实现;习惯的用这种方法划分、拆解程序,可以使得程序逻辑更加清晰.

而且在标准库在很多类上也增加了支持lambda表达式的方法,在有类似的需求时可以方便的使用,比如AtomicLong.getAndAccumulate.

下面是一些常用的功能接口

泛型的Function、Predicate、Supplier、Consumer、UnaryOperator、BiFunction、BiFunction、BiPredicate、BiSupplier、BiConsumer

基本类型变量功能接口,每种基本类型配套的Function、Predicate、Supplier、Consumer,比如IntSupplier、LongFunction。

虽然基本类型可以自动拆箱、自动装箱,但是为避免降低效率,尽量使用基本类型变量接口.

在Stream中也有对应的基本类型Stream与之对应,配合使用.比如IntStream、.LongStream.

示例代码

int contextParam = 6;

AtomicInteger atomicInteger = new AtomicInteger(3);

atomicInteger.getAndAccumulate(

2,(x,y)->

x+y*contextParam

);

System.out.println(atomicInteger.get());

IntStream.range(1,3).asLongStream().forEach((x)->{

System.out.println(contextParam*x);

});

输出

15

6

12


上一篇: 沙发电视管家apk(沙发软件apk) 下一篇:SessionFactory线程session的工作过程(简述session的工作过程)
返回顶部