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

在线制作钓鱼网站源码浙江网站推广公司

在线制作钓鱼网站源码,浙江网站推广公司,seo网站营销公司哪家好,南昌做网站文章目录 一、 Stream流概述1.1 什么是Stream流#xff0c;以及它的主要特点和优势1.2 Stream流的基本操作#xff1a;过滤、映射、排序等 二、 Stream流源码解析2.1 接口和基本概念2.2 创建流2.3 源码分析2.3.1 流的起始2.3.2 流的初始2.3.3 认识BaseStream2.3.4 Stream接口… 文章目录 一、 Stream流概述1.1 什么是Stream流以及它的主要特点和优势1.2 Stream流的基本操作过滤、映射、排序等 二、 Stream流源码解析2.1 接口和基本概念2.2 创建流2.3 源码分析2.3.1 流的起始2.3.2 流的初始2.3.3 认识BaseStream2.3.4 Stream接口继承BaseStream2.3.5 Stream流的其它流形式 一、 Stream流概述 1.1 什么是Stream流以及它的主要特点和优势 什么是Stream流 jdk1.8中引入的Stream流是一种用函数式编程方式操作集合的新特性提供了一种更简洁、高效的方式来处理集合数据可以将集合操作转换为一系列的流水线操作实现更加优雅和功能强大的数据处理。 主要特点和优势 链式调用Stream流支持链式调用可以将多个操作连接在一起形成一个流水线式的数据处理过程使代码更加清晰和易读。惰性求值Stream流采用惰性求值的策略只有当终端操作被调用时才会执行中间操作这种特性可以提高性能避免不必要的计算。并行处理Stream流提供了并行处理的能力在处理大规模数据时可以自动进行并行计算充分利用多核处理器的性能优势提高程序的执行效率。函数式编程Stream流倡导函数式编程思想可以通过Lambda表达式来定义操作从而简化代码减少样板代码的编写。 Stream流的简单Demo import java.util.Arrays; import java.util.List;public class StreamDemo {public static void main(String[] args) {ListInteger numbers Arrays.asList(1, 2, 3, 4, 5);// 使用Stream流对集合元素进行处理int sum numbers.stream().filter(n - n % 2 0) // 过滤偶数 2 4.map(n - n * 2) // 将偶数翻倍 4 8.reduce(0, Integer::sum); // 求和 4 8 12System.out.println(处理后的结果 sum); // 处理后的结果12} }1.2 Stream流的基本操作过滤、映射、排序等 使用水果的Demo来解释API import java.util.Arrays; import java.util.List;public class StreamFruitsDemo {public static void main(String[] args) {ListString fruits Arrays.asList(Apple, Banana, Cherry, Date, Elderberry);// 过滤 长度大于5的水果System.out.println(过滤后的水果);fruits.stream().filter(fruit - fruit.length() 5).forEach(System.out::println); // 循环输出打印过滤的结果// 将水果名称 转换为大写System.out.println(映射后的水果名称);fruits.stream().map(String::toUpperCase).forEach(System.out::println);// 对水果名称进行 排序System.out.println(按字母顺序排序的水果名称);fruits.stream().sorted().forEach(System.out::println);// 对水果名称进行 连接System.out.println(所有水果名称连接后的结果 );fruits.stream().reduce(, (partialResult, fruit) - partialResult fruit);} }ps其它API可以查询官网等方式来了解这篇文章就不过多描述其用法了。 二、 Stream流源码解析 2.1 接口和基本概念 Stream 接口 Stream 接口是 jdk1.8 引入的用于支持函数式编程的接口它提供了一种高效处理集合数据的方式。Stream 接口并不是存储数据的容器而是用于描述对数据的一系列操作并且可以进行链式操作。 Spliterator 接口 Spliterator 接口是jdk1.8中引入的用于支持并行遍历和分割迭代元素的接口。在 Stream 流中Spliterator 主要用于将数据分割成多个部分以便并行处理。 Stream接口和 Spliterator接口的Demo 2.2 创建流 要查看流的创建方式的实现逻辑可以从不同的创建方式入手。 建议按照以下顺序来查看源码 集合创建流Collection.stream() 可以先从 Collection 接口的 stream() 方法入手查看其实现逻辑。可以查看 java.util.Collection 接口的源码找到 stream() 方法的具体实现。 数组创建流Arrays.stream() 可以查看 java.util.Arrays 类中的 stream() 方法的实现逻辑找到数组创建流的具体过程。 使用静态方法创建流Stream.of() 等 对于使用静态方法创建流比如 Stream.of()可以直接查看 java.util.stream.Stream 类中的实现逻辑找到对应的静态方法实现。 其它流比如 调用 parallelStream() 方法创建并发流默认使用的是 ForkJoinPool.commonPool()线程池。 创建方式 ps本文章从 Collection 接口的 stream() 方法入手来解读源码其它源码读者可以试着去解读。 2.3 源码分析 源码解析都是写在图上不做过多的描述。 2.3.1 流的起始 2.3.2 流的初始 2.3.3 认识BaseStream 2.3.4 Stream接口继承BaseStream 2.3.5 Stream流的其它流形式 到了Stream接口懂的都懂了吧中间操作和终端操作等解析请期待下篇文章哈哈哈哈哈晚安玛卡巴卡__ 你只管努力剩下的交给时间
http://www.zqtcl.cn/news/102024/

相关文章:

  • 河南网站建设推广公司汕尾网站建设
  • 海南省建设网站首页公司网站图片传不上去
  • 中国建设银行网站评价广告投放都有哪些平台
  • 网站系统免费wordpress附件不在数据库
  • 网站开发国外研究状况电商推广是什么意思
  • 太原建高铁站wordpress分级菜单显示
  • 工信部网站备案变更运营一个app大概多少钱
  • 杭州网站建设公司哪家好网站建设 中国联盟网
  • 成都手机网站建设价格网站安全检测软件
  • 长沙申请域名网站备案找个做游戏的视频网站
  • 网站平台开发与应用面试西安seo优化顾问
  • 苏州网站制作及推广中国优秀的企业网站
  • 网站开发语言太老东莞哪家公司做网站比较好
  • 单位网站制作费用报价单博客和个人网站建设情况
  • 山东网站建设公司电话全球建筑设计网站
  • wordpress 站点描述国外优秀网页设计赏析
  • php红酒网站建设软件开发外包项目合作
  • 做网站的都改行做什么了上海推牛网络科技有限公司
  • 在哪里建设网站dedecms做网站注意事项
  • 垂直类网站怎么做推广互联网站的建设维护营销
  • 手机网站大全排行江西省赣州市邮政编码
  • 集团网站建设建站模板seo优化工具软件
  • 大连项目备案网站网站建设一下需要多少费用
  • 松溪网站建设做网站外包
  • sdcms网站建设模板WordPress自定义连接菜单
  • 做设计常用的素材网站外贸平台销售
  • 建网站一般最低多少钱地方门户模板
  • 网站开发虚拟主机管理系统星巴克网络营销方式
  • phpnow 搭建网站网站建设一般怎么付款
  • 网站开发三剑客湖州市南浔区建设局网站