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

快速网站建设多少钱网站seo外包靠谱吗

快速网站建设多少钱,网站seo外包靠谱吗,电商是怎么做的,慕课网站开发全文目录: 开篇语前言一、Stream 的概念与操作1.1 Stream 的特点1.2 创建 Stream代码示例:创建 Stream 二、中间操作与终端操作2.1 中间操作2.2 终端操作代码示例:中间操作与终端操作 三、过滤、映射与聚合操作3.1 过滤(Filter&am…

全文目录:

    • 开篇语
    • 前言
      • 一、Stream 的概念与操作
        • 1.1 Stream 的特点
        • 1.2 创建 Stream
          • 代码示例:创建 Stream
      • 二、中间操作与终端操作
        • 2.1 中间操作
        • 2.2 终端操作
          • 代码示例:中间操作与终端操作
      • 三、过滤、映射与聚合操作
        • 3.1 过滤(Filter)
          • 代码示例:使用 `filter()` 过滤元素
        • 3.2 映射(Map)
          • 代码示例:使用 `map()` 映射元素
        • 3.3 聚合操作
          • 代码示例:使用 `reduce()` 进行聚合
      • 四、并行流与性能优化
        • 4.1 并行流(Parallel Stream)
          • 代码示例:使用并行流
        • 4.2 性能优化
      • 总结:Stream API 的威力
    • 文末

开篇语

哈喽,各位小伙伴们,你们好呀,我是喵手。运营社区:C站/掘金/腾讯云/阿里云/华为云/51CTO;欢迎大家常来逛逛

  今天我要给大家分享一些自己日常学习到的一些知识点,并以文字的形式跟大家一起交流,互相学习,一个人虽可以走的更快,但一群人可以走的更远。

  我是一名后端开发爱好者,工作日常接触到最多的就是Java语言啦,所以我都尽量抽业余时间把自己所学到所会的,通过文章的形式进行输出,希望以这种方式帮助到更多的初学者或者想入门的小伙伴们,同时也能对自己的技术进行沉淀,加以复盘,查缺补漏。

小伙伴们在批阅的过程中,如果觉得文章不错,欢迎点赞、收藏、关注哦。三连即是对作者我写作道路上最好的鼓励与支持!

前言

  在 Java 8 引入了 Stream API,这使得数据处理变得更加简洁、高效和表达力强。通过 Stream API,我们能够以声明式的方式处理集合和数组等数据源,极大地提升了代码的可读性和可维护性。今天我们将深入探讨 Stream 的概念与操作中间操作与终端操作过滤、映射与聚合操作,以及 并行流与性能优化

一、Stream 的概念与操作

Stream 是一个可以从数据源(如集合、数组、I/O 通道等)生成的元素的集合,并且通过管道化的操作对这些元素进行处理。Stream 是 不存储数据 的,它们只是数据操作的一个视图或计算过程,每个中间操作都返回一个新的 Stream。

1.1 Stream 的特点
  • 无存储:Stream 并不存储数据,它只是对数据源的一个视图。
  • 函数式编程风格:Stream 使用链式调用,使得数据处理过程更加简洁。
  • 延迟计算:Stream 的操作是懒执行的,只有在执行终端操作时,才会触发数据处理。
1.2 创建 Stream

Stream 可以从多种数据源创建,常见的创建方法包括:

  • 从集合中创建list.stream()
  • 从数组中创建Arrays.stream(array)
  • 从文件中创建Files.lines(path)
  • 使用 Stream.of() 创建Stream.of("a", "b", "c")
代码示例:创建 Stream
import java.util.Arrays;
import java.util.List;
import java.util.stream.Stream;public class StreamExample {public static void main(String[] args) {// 从集合中创建 StreamList<String> list = Arrays.asList("a", "b", "c");list.stream().forEach(System.out::println);  // 使用 forEach 遍历// 从数组中创建 StreamString[] array = {"1", "2", "3"};Arrays.stream(array).forEach(System.out::println);// 使用 Stream.of 创建 StreamStream<String> stream = Stream.of("x", "y", "z");stream.forEach(System.out::println);}
}

二、中间操作与终端操作

Stream API 中的操作可以分为 中间操作终端操作

2.1 中间操作

中间操作返回一个新的 Stream,因此它们是 惰性 的操作。常见的中间操作包括:

  • filter():过滤流中的元素。
  • map():对流中的每个元素进行操作,返回新的元素。
  • flatMap():将元素转换成多个元素并平铺,通常用于嵌套集合的扁平化。
  • sorted():对流中的元素进行排序。
  • distinct():去重操作。
2.2 终端操作

终端操作会触发 Stream 的计算,并且会将结果返回或输出。常见的终端操作包括:

  • forEach():对流中的每个元素进行操作。
  • collect():将 Stream 转换为其他数据结构(如 List、Set、Map)。
  • reduce():通过一个累加器将流中的元素聚合成一个结果。
  • count():返回流中元素的数量。
  • anyMatch()allMatch()noneMatch():用于判断流中的元素是否匹配某些条件。
代码示例:中间操作与终端操作
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;public class StreamOperationsExample {public static void main(String[] args) {List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9);// 中间操作:filter 和 mapList<Integer> result = numbers.stream().filter(n -> n % 2 == 0)  // 过滤偶数.map(n -> n * n)          // 对每个元素平方.collect(Collectors.toList());  // 终端操作:收集结果System.out.println(result);  // 输出: [4, 16, 36, 64]// 终端操作:forEachnumbers.stream().forEach(System.out::println);}
}

三、过滤、映射与聚合操作

Stream API 提供了强大的数据处理能力,包括过滤、映射、聚合等操作。

3.1 过滤(Filter)

filter() 中间操作用于过滤符合条件的元素,返回一个新的 Stream。

代码示例:使用 filter() 过滤元素
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6);
List<Integer> evenNumbers = numbers.stream().filter(n -> n % 2 == 0)  // 过滤偶数.collect(Collectors.toList());
System.out.println(evenNumbers);  // 输出: [2, 4, 6]
3.2 映射(Map)

map() 中间操作用于将流中的每个元素进行转换,并返回新的流。

代码示例:使用 map() 映射元素
List<String> words = Arrays.asList("hello", "world", "java");
List<String> upperCaseWords = words.stream().map(String::toUpperCase)  // 将每个字符串转换为大写.collect(Collectors.toList());
System.out.println(upperCaseWords);  // 输出: [HELLO, WORLD, JAVA]
3.3 聚合操作

Stream 提供了 reduce() 方法用于聚合流中的元素,通常用于求和、求积等操作。

代码示例:使用 reduce() 进行聚合
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
int sum = numbers.stream().reduce(0, Integer::sum);  // 求和
System.out.println(sum);  // 输出: 15

  reduce() 方法接受两个参数:初始值和一个 BinaryOperator 函数,这里用来对流中的所有元素进行求和操作。


四、并行流与性能优化

4.1 并行流(Parallel Stream)

Java 的 Stream API 支持 并行流,它利用多核 CPU 的优势,将流中的操作并行化。通过 parallelStream()stream().parallel() 方法可以轻松创建并行流。

  • 优势:对于计算密集型任务,使用并行流可以显著提升性能。
  • 劣势:对于 IO 密集型任务,并行流并不会提高性能,反而可能导致线程切换开销增加。
代码示例:使用并行流
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9);
int sum = numbers.parallelStream()  // 创建并行流.reduce(0, Integer::sum);  // 求和
System.out.println(sum);  // 输出: 45

  在此例中,parallelStream() 创建了一个并行流,流中的元素将由多个线程并行处理,从而提高性能。

4.2 性能优化
  • 避免不必要的操作:Stream 是惰性执行的,但每个中间操作都可能带来性能开销。在实际使用中,应该尽量避免不必要的中间操作。
  • 使用并行流:对于大量的数据处理任务,可以考虑使用并行流进行优化。
  • 减少内存复制:对于大的数据集,尽量避免不必要的内存复制和数据复制。

总结:Stream API 的威力

  通过 Java 8 引入的 Stream API,我们能够以简洁的方式处理集合和数组中的数据。通过流的中间操作和终端操作,开发者可以轻松地进行过滤、映射和聚合等数据处理。并行流提供了一个便捷的方式来充分利用多核 CPU,从而加速计算密集型任务的执行。

  掌握 Stream API,你可以编写更加简洁、高效的代码,轻松应对大规模数据的处理和并行计算任务!

… …

文末

好啦,以上就是我这期的全部内容,如果有任何疑问,欢迎下方留言哦,咱们下期见。

… …

学习不分先后,知识不分多少;事无巨细,当以虚心求教;三人行,必有我师焉!!!

wished for you successed !!!


⭐️若喜欢我,就请关注我叭。

⭐️若对您有用,就请点赞叭。
⭐️若有疑问,就请评论留言告诉我叭。


版权声明:本文由作者原创,转载请注明出处,谢谢支持!

http://www.dtcms.com/wzjs/202046.html

相关文章:

  • 罗定城乡建设局网站seod的中文意思
  • 广州市建设用地供应计划网站企业关键词优化价格
  • wordpress 轮播开发seo优化排名软件
  • 海山网站建设网站搜索引擎
  • 论述网站推广的方法与技巧全网搜索指数
  • 酒店网站建设报价单外贸网站都有哪些
  • 做网站的公司哪家强石家庄seo公司
  • 做网站一般注意些什么拍照搜索百度识图
  • 做哪个网站有效果网络推广文案
  • Java除了做网站开发哈能做啥线下推广有哪些渠道
  • 做网站分几种百度热搜榜历史
  • 做欧美贸易的主要有哪些网站b站是哪个网站
  • 定制网站开发设计网推平台
  • 天津市建设银行租房网站360seo排名点击软件
  • 做视频在哪个网站收益高百度指数数据分析
  • 临朐网站建设建站首选哪家公司网上怎么推销自己的产品
  • 免费申请httq网站?网络推广平台有哪些渠道
  • 很色h做游戏网站微信公众号推广2元一个
  • 主机网站建设制作seo网站排名软件
  • 常州快速建站模板seo优化收费
  • 做网站需要学jsp个人网上卖货的平台
  • wordpress logo 字体颜色seo系统培训哪家好
  • 做电商有哪些网站有哪些优化设计的答案
  • 健身网站开发背景及意义经典网络营销案例
  • 二手房网站怎么做才能接到电话黑科技引流软件是真的吗
  • 58同城推广能免费做网站吗windows优化大师自动下载
  • 现在外国有哪个网站可以做卖东西windows优化大师功能
  • 做网站插入音乐用什么下载网络优化工程师是干什么的
  • wordpress网站关键词如何做seo优化
  • 扶贫工作网站怎么做无锡seo优化公司