当前位置: 首页 > news >正文

flash网站首页南京做网站优化的企业

flash网站首页,南京做网站优化的企业,wordpress 币,五金机械设备网站模板建设1 四大函数式接口函数式接口#xff1a;只有一个抽象方法的接口#xff0c;只要是函数式接口#xff0c;就可以用lambda表达式简化例如Runnable#xff1a;FunctionalInterface public interface Runnable {public abstract void run(); }框架底层大量应用函数式接口#…1 四大函数式接口函数式接口只有一个抽象方法的接口只要是函数式接口就可以用lambda表达式简化例如RunnableFunctionalInterface public interface Runnable {public abstract void run(); }框架底层大量应用函数式接口用来简化编程模型。1.1 FunctionFunction函数式接口该接口用到两个参数一个是输入参数一个是输出参数FunctionalInterface public interface FunctionT, R {R apply(T t); ... } demopublic class demo1 {public static void main(String[] args) {//匿名内部类Function function new FunctionString,String(){Overridepublic String apply(String s) {return s;}};// //lambda表达式FunctionString,String function (str) -{return str;};System.out.println(function.apply(AAA));} }1.2 PredicatePredicate断定型接口有一个输入参数返回值只能是布尔值FunctionalInterface public interface PredicateT {boolean test(T t); ... } demopublic class demo2 {public static void main(String[] args) {//判断字符串是否为空PredicateString predicate new PredicateString() {Overridepublic boolean test(String str) {return str.isEmpty();}};PredicateString predicate (str)-{return str.isEmpty();};System.out.println(predicate.test());} }1.3 PredicatePredicate消费型接口只有输入没有返回值FunctionalInterface public interface ConsumerT {void accept(T t); ... } demopublic class demo3 {public static void main(String[] args) {//匿名内部类ConsumerString consumer new ConsumerString(){Overridepublic void accept(String str) {System.out.println(str);}};//lambda表达式ConsumerString consumer (str)-{System.out.println(str);};consumer.accept(AAA);} }1.4 PredicatePredicate供给型接口没有参数但有返回值FunctionalInterface public interface SupplierT {T get(); } demopublic class demo4 {public static void main(String[] args) {SupplierString supplier new SupplierString() {Overridepublic String get() {return 1024;}};SupplierString supplier ()-{return 1024;};supplier.get();} }2 ForkJoin 要点ForkJoin是JDK1.7之后推出用来并行执行任务用于提高效率适用大数据量的场景。ForkJoin将复杂的计算当做一个任务将其分解为多个计算并当做一个个子任务来并行执行工作窃取ForkJoin将某个大任务分解为若干互不依赖的子任务这些子任务分别放到不同的队列里每个队列创建一个单独的线程来执行队列里的任务线程和队列一一对应那么会出现这么一种情况某些线程执行较快其他线程则还在干活因此工作窃取机制就来了--干完活的线程会从其他线程的队列里窃取一个任务来执行同时双端队列允许两个线程同时访问一个线程。 使用forkjoinforkjoinPool通过它来执行计算任务forkjoinPool.execute(ForkJoinTask task)计算类继承RecursiveTaskRecursiveTask继承至ForkJoinTask//计算类 public class ForkJoinDemo extends RecursiveTaskLong {private long start;private long end;//临界值private long temp 10000L;public ForkJoinDemo(long start,long end){this.start start;this.end end;}Overrideprotected Long compute() {if ((end-start)temp){long sum 0L;for (long i start;i end;i){sum i;}return sum;}else {//forkjoinlong middle (startend)/2;//中间值ForkJoinDemo task1 new ForkJoinDemo(start,middle);task1.fork();//拆分任务把任务压入线程队列ForkJoinDemo task2 new ForkJoinDemo(middle1,end);task2.fork();//拆分任务把任务压入线程队列return task1.join()task2.join();}} } 求和三种方式因为前两种方式我用的long数据类型所以计算会快一些。public class ForkJoinTest {public static void main(String[] args) throws ExecutionException, InterruptedException {common(); //263forkJoin(); //140stream();//232}//1、普通程序员public static void common(){long sum 0;long start System.currentTimeMillis();for (long i 1L; i 10_0000_0000; i) {sum i;}long end System.currentTimeMillis();System.out.println(sum sum 时间(end - start));}//2、使用ForkJoinpublic static void forkJoin() throws ExecutionException, InterruptedException {long start System.currentTimeMillis();ForkJoinPool forkJoinPool new ForkJoinPool();ForkJoinTaskLong task new ForkJoinDemo(1L,10_0000_0000L);ForkJoinTaskLong submit forkJoinPool.submit(task);long sum submit.get();long end System.currentTimeMillis();System.out.println(sum sum 时间(end - start));}//3、stream并行流public static void stream() throws ExecutionException, InterruptedException {long start System.currentTimeMillis();//reduce:将流中元素反复结合起来得到一个值,下边也可简化为.reduce(Long::sum)--调用Long类中的sum方法OptionalLong sum1 LongStream.rangeClosed(1L,10_0000_0000L).parallel().reduce((a, b)-ab);long end System.currentTimeMillis();System.out.println(sum sum1.getAsLong() 时间(end - start));} }
http://www.w-s-a.com/news/130551/

相关文章:

  • 沈阳市浑南区城乡建设局网站wordpress 批量打印
  • 网站建设都需学哪些天津网站建设交易
  • 公司网站空间家装室内设计
  • 一个考试网站怎么做品牌建设10阶梯
  • 网站建设网站设计广东双语网站建设多少钱
  • 临时手机号注册网站建筑效果图
  • wordpress网站是什么类似wordpress博客
  • 国际网站空间昆明做网站开发维护的公司
  • 建网站选号域名网站优化大赛
  • 师范街网站建设广告制作公司口号
  • 电子商务网站开发设计报告为什么wordpress主题中字体不统一
  • 百度站长快速收录网站建设完工确认书
  • 企业网站备案代理商建设工程施工合同2013
  • 要学做网站wordpress xss漏洞
  • 白云品牌型网站建设在网上做国际快递淘宝网站
  • 无锡网站建设方式推广软件赚钱的app
  • 如何控制一个网站软件开发wordpress教育插件
  • 网站开发属于软件开发类吗wordpress邮件失败
  • 凡科网站怎么设计win8网站模板
  • 深圳整站seo个人网站建设一般流程
  • 济南网站中企动力wordpress主题ripro
  • 淮北网站建设求职简历怎么做点击图片进网站
  • 自适应网站推广注册公司流程和费用公司注册
  • 电子商务网站建设预算表网站建设卩金手指科杰
  • 广西响应式网站哪家好产品网络推广怎样做
  • 移动网可以上的网站是什么样子的淘宝优惠券网站开发
  • wordpress php设置伊宁seo网站建设
  • 兰陵住房建设局网站wordpress中文标题
  • 福州搜索优化网站个人网页网站制作模板
  • 网站开发分哪几个步骤使用wordpress开发一个页面跳转