求质数
單線程:
//tally:質數數量\耗時----9593\1200///78499\86722private static void countPrimes(int num) {int tally=0;for(int i=1;i<=num;i++){if(isP(i)){tally++;//System.out.println(i);}}System.out.println("tally:"+tally);}private static boolean isP(int num) {for(int i=2;i<num;i++){if(num%i==0)return false;}return true;} 復制代碼多線程要快很多,使用lambda方式更容易實現多線程。同時使用lambda表達式另一個好處是更容易實現SOLID中單一功能原則。每一個方法或類實現單一的功能。邏輯顯得更加清晰。 復制代碼 //lambda 78499\23548private static long countPrimes1(int num) {return IntStream.range(1,num)//去掉parallel()就是單線程運行。.parallel().filter(n->isP(n)).count();} 復制代碼總結
- 上一篇: Centos 7安装Postfix用于发
- 下一篇: spring-cloud Finchle