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

中国网上购物网站全国做网站的公司有哪些

中国网上购物网站,全国做网站的公司有哪些,网址价格,无需注册网站模板下载/***JDK8 Stream特性* Created by chengbx on 2018/5/27.* Java 8 中的 Stream 是对集合#xff08;Collection#xff09;对象功能的增强#xff0c;它专注于对集合对象进行各种非常便利、高效的聚合操作#xff08;aggregate operation#xff09;#xff0c;* 或者大… /***JDK8 Stream特性* Created by chengbx on 2018/5/27.* Java 8 中的 Stream 是对集合Collection对象功能的增强它专注于对集合对象进行各种非常便利、高效的聚合操作aggregate operation* 或者大批量数据操作 (bulk data operation)。Stream API 借助于同样新出现的 Lambda 表达式极大的提高编程效率和程序可读性。* 同时它提供串行和并行两种模式进行汇聚操作并发模式能够充分利用多核处理器的优势使用 fork/join 并行方式来拆分任务和加速处理过程。* 通常编写并行代码很难而且容易出错, 但使用 Stream API 无需编写一行多线程的代码就可以很方便地写出高性能的并发程序。* 所以说Java 8 中首次出现的 java.util.stream 是一个函数式语言多核时代综合影响的产物。* 一、Stream API 的操作步骤* * 1. 创建 Stream** 2. 中间操作** 3. 终止操作(终端操作)** 4. 接口中的默认方法* 接口默认方法的”类优先”原则* 若一个接口中定义了一个默认方法而另外一个父类或接口中* 又定义了一个同名的方法时* 1.选择父类中的方法。如果一个父类提供了具体的实现那么* 接口中具有相同名称和参数的默认方法会被忽略.* 2.接口冲突。如果一个父接口提供一个默认方法而另一个接* 口也提供了一个具有相同名称和参数列表的方法不管方法* 是否是默认方法那么必须覆盖该方法来解决冲突* 5. 新增的重复注解Repeatble和类型注解* java8新增了重复注解其使用方式为Repeatable(Authorities.class)public interface Authority {String role();}public interface Authorities {Authority[] value();}public class RepeatAnnotationUseNewVersion {Authority(roleAdmin)Authority(roleManager)publicvoiddoSomeThing(){ }}2.Java8为ElementType枚举增加了TYPE_PARAMETER、TYPE_USE两个枚举值从而可以使用Target(ElementType_TYPE_USE)修饰注解定义这种注解被称为类型注解可以用在任何使用到类型的地方*/ public class TestStream {ListEmployee employees Arrays.asList(new Employee(aaa,11,5000),new Employee(bbb,21,5200),new Employee(ccc,13,5500),new Employee(ddd,54,6400),new Employee(eee,16,7100),new Employee(fff,74,7120),new Employee(ggg,12,7150));/*** 创建stream*/Testpublic void test1(){//1. Collection 提供了两个方法 stream() 与 parallelStream()ListString list new ArrayList();StreamString stream list.stream();StreamString parallelStream list.parallelStream(); //获取一个并行流//2. 通过 Arrays 中的 stream() 获取一个数组流Integer[] nums new Integer[10];StreamInteger stream1 Arrays.stream(nums);//3. 通过 Stream 类中静态方法 of()StreamInteger stream2 Stream.of(1,2,3,4,5,6);//4. 创建无限流//迭代StreamInteger stream3 Stream.iterate(0, (x) - x 2).limit(10);stream3.forEach(System.out::println);//生成StreamDouble stream4 Stream.generate(Math::random).limit(2);stream4.forEach(System.out::println);}/*筛选与切片filter——接收 Lambda 从流中排除某些元素。limit——截断流使其元素不超过给定数量。skip(n) —— 跳过元素返回一个扔掉了前 n 个元素的流。若流中元素不足 n 个则返回一个空流。与 limit(n) 互补distinct——筛选通过流所生成元素的 hashCode() 和 equals() 去除重复元素*///内部迭代迭代操作 Stream API 内部完成Testpublic void test2(){//中间操作,不会执行任何操作StreamEmployee str employees.stream().filter((e) - e.getAge()30).limit(1);//终止操作,一次性执行全部内容即惰性求值str.forEach(System.out::println);// employees.stream().filter((e) - e.getAge()30)// .forEach((employee) - System.out.println(employee));}//外部迭代Testpublic void test3(){IteratorEmployee it employees.iterator();while(it.hasNext()){System.out.println(it.next());}}Testpublic void test4(){employees.stream().filter((e) - {System.out.println(短路); // ||return e.getSalary() 5000;}).limit(3).forEach(System.out::println);}Testpublic void test5(){employees.parallelStream().filter((e) - e.getSalary() 5000).skip(2).forEach(System.out::println);}Testpublic void test6(){employees.stream().distinct().forEach(System.out::println);}/*** 映射* map -接收lambda将元素转换成其他形式获取信息接收一个函数作为参数该函数会被应用在每个元素上并将其映射成一个新的元素。* flatmap-接收一个函数作为参数将流中的每个值都换成另一个流然后把所有流连接成一个流*/Testpublic void test7(){ListString list Arrays.asList(aaa,bbb,ccc,ddd);list.stream().map((str) - str.toUpperCase()).forEach((str) - System.out.println(str));System.out.println(---------------);employees.stream().map(Employee::getName).forEach((name) -System.out.println(name));}/*** 排序* sorted()--自然排序(comparable)* sorted(Comparator com)--定制排序(Comparator)*/Testpublic void test8(){ListString list Arrays.asList(eee,ggg,ccc,ddd);list.stream().sorted().forEach(System.out::println);System.out.println(-------------------以下是定制排序-------------);employees.stream().sorted((e1,e2) -{if (e1.getAge() e2.getAge()) {return e1.getName().compareTo(e2.getName());}else{return Integer.compare(e1.getAge(),e2.getAge());}}).forEach((employee) - System.out.println(employee));}//3. 终止操作/*allMatch——检查是否匹配所有元素anyMatch——检查是否至少匹配一个元素noneMatch——检查是否没有匹配的元素findFirst——返回第一个元素findAny——返回当前流中的任意元素count——返回流中元素的总个数max——返回流中最大值min——返回流中最小值注意流进行了终止操作后不能再次使用*/Testpublic void test9(){boolean b employees.stream().allMatch((emp) - emp.getAge()15);System.out.println(b);System.out.println(---------------);boolean b1 employees.stream().anyMatch((emp) - emp.getAge()15);System.out.println(b1);System.out.println(---------------);boolean b2 employees.stream().noneMatch((emp) - emp.getAge()15);System.out.println(b2);System.out.println(---------------);OptionalEmployee optional employees.stream().sorted((emp1, emp2) - Double.compare(emp1.getSalary(),emp2.getSalary())).findFirst();System.out.println(optional.get());System.out.println(---------------);OptionalEmployee optional1 employees.parallelStream().filter((emp) - emp.getAge() 15).findAny();System.out.println(optional1);System.out.println(---------------);Long count employees.parallelStream().filter((emp) - emp.getAge() 15).count();System.out.println(count);OptionalDouble optiona3 employees.stream().map((emp) - emp.getSalary()).max(Double::compareTo);System.out.println(optiona3.get());System.out.println(---------------);OptionalEmployee optiona4 employees.stream().min((e1,e2) -Double.compare(e1.getSalary(),e2.getSalary()));System.out.println(optiona4);}/*** 归约reduce(T identity, BinaryOperator) / reduce(BinaryOperator) ——可以将流中元素反复结合起来得到一个值。*/Testpublic void test10(){ListInteger list Arrays.asList(1,2,3,4,5,6,7,8,9,10);Integer sum list.stream().reduce(0,(x,y) - xy);System.out.println(sum);//55System.out.println(---------------------);OptionalDouble sumSal employees.stream().map(Employee::getSalary).reduce(Double::sum);System.out.println(sumSal);}/*** 收集:* collect——将流转换为其他形式。接收一个 Collector接口的实现用于给Stream中元素做汇总的方法*///将employee集合中name值取出来放入集合中 aaa bbb ccc ddd eee fff gggTestpublic void test11(){List list employees.stream().map(Employee::getName).collect(Collectors.toList());list.forEach(System.out::println);}Testpublic void test12(){Set set employees.stream().map(Employee::getName).collect(Collectors.toSet());set.forEach(System.out::println);}Testpublic void test13(){HashSet hashSet employees.stream().map(Employee::getName).collect(Collectors.toCollection(HashSet::new));hashSet.forEach(System.out::println);}//获取集合中元素的个数 7Testpublic void test14(){long count employees.stream().collect(Collectors.counting());System.out.println(count);System.out.println(----------------);//获取工资平均值Double avgMoney employees.stream().collect(Collectors.averagingDouble((emp) - emp.getSalary()));System.out.println(avgMoney);//6210.0System.out.println(----------------);//工资总和Double sumMoney employees.stream().collect(Collectors.summingDouble(Employee::getSalary));System.out.println(sumMoney);//最大值OptionalEmployee optional employees.stream().collect(Collectors.maxBy((emp1,emp2) - Double.compare(emp1.getSalary(),emp2.getSalary())));System.out.println(optional.get());//Employee{nameggg, age12, salary7150.0}//最小值OptionalDouble minMoney employees.stream().map(Employee::getSalary).collect(Collectors.minBy(Double::compare));System.out.println(minMoney.get());}//分组Testpublic void test15(){employees.stream().collect(Collectors.groupingBy(Employee::getAge));}//分区Testpublic void test16(){MapBoolean,ListEmployee map employees.stream().collect(Collectors.partitioningBy((e) - e.getSalary() 6000));System.out.println(map);//{false[Employee{nameaaa, age11, salary5000.0}, Employee{namebbb, age21, salary5200.0},// Employee{nameccc, age13, salary5500.0}],// true[Employee{nameddd, age54, salary6400.0}, Employee{nameeee, age16, salary7100.0},// Employee{namefff, age74, salary7120.0}, Employee{nameggg, age12, salary7150.0}]} }Testpublic void test17(){DoubleSummaryStatistics dss employees.stream().collect(Collectors.summarizingDouble(Employee::getSalary));//求平均值System.out.println(dss.getAverage());//求最大值System.out.println(dss.getMax());//求和System.out.println(dss.getSum());} Testpublic void test18(){String name employees.stream().map(Employee::getName).collect(Collectors.joining(,));System.out.println(name);//aaa,bbb,ccc,ddd,eee,fff,ggg} }  转载于:https://www.cnblogs.com/cbxBlog/p/9123106.html
http://www.zqtcl.cn/news/302452/

相关文章:

  • php技术的网站建设实录方案做二手手机的网站有哪些
  • 做网站店铺装修的软件怎么做淘课网站
  • 百度一下官方网站wordpress连接代码
  • 什么网站详情页做的好仿唧唧帝笑话门户网站源码带多条采集规则 织梦搞笑图片视频模板
  • 平原网站建设费用少儿编程加盟店倒闭
  • 企业网站建设专业公司蜜淘app在那个网站做的
  • 市住房城乡建设部网站大学生课程设计网站
  • 广州大石附近做网站的公司外包服务公司是干什么的
  • 做的新网站网上搜不到做的网站百度搜索不出来的
  • 电商网站后台报价公司如何建站
  • 查网站有没有做推广企业网站建设的目标
  • 北京网站维护公司专业外贸网站建设_诚信_青岛
  • 网站自己做还是用程序制作网站一般使用的软件有哪些
  • 晨雷文化传媒网站建设济南互联网品牌设计
  • 怎样给自己的网站做防红连接梵客装饰公司官网
  • 甘肃省城乡与住房建设厅网站纪检网站建设动态主题
  • 关于做好全国网站建设网站建设哪个好
  • 灵犀科技网站建设企业建设网站作用
  • 做网站架构图无版权图片网站
  • 赌场需要网站维护吗通过服务推广网站的案例
  • 阿里云网站空间网站建设犭金手指六六壹柒
  • 网站排名软件包年农业网站开发
  • 建设信用卡网银网站crm客户关系管理论文
  • 阿里巴巴网站的搜索引擎优化案例软件开发收费价目表
  • 企业网站建设之域名篇wordpress 文章居中
  • 萍乡网站建设行吗南康建设局官方网站
  • 一键部署wordpress爱站seo工具
  • 大连网站建设服务做进料加工在哪个网站上做
  • 南昌行业网站建设网站版权信息修改
  • 百度网站关键词排名助手低成本做网站 白之家