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

带数据库的网站怎么建织梦可以做婚纱影楼网站吗

带数据库的网站怎么建,织梦可以做婚纱影楼网站吗,辽宁手机响应式网站建设,企业需要缴纳哪些税一、Java的Stream流式编程中的中间操作 Java的Stream流式编程中#xff0c;中间操作是对数据流进行处理的一种方式#xff0c;这些操作通常返回流对象本身#xff0c;以便可以链接更多的操作。以下是一些常见的中间操作#xff1a; filter(Predicate predicate) - 用于通过…一、Java的Stream流式编程中的中间操作 Java的Stream流式编程中中间操作是对数据流进行处理的一种方式这些操作通常返回流对象本身以便可以链接更多的操作。以下是一些常见的中间操作 filter(Predicate predicate) - 用于通过设定的条件过滤出元素。 sorted() - 对元素进行排序。 distinct() - 去除重复的元素。 limit(long maxSize) - 获取指定数量的流元素。 skip(long n) - 跳过操作跳过某些元素。 peek() - 查看操作。允许你在不影响流的主要处理逻辑的情况下查看或使用流中的每个元素。这个方法可以用来进行一些调试或日志记录等操作。下面是一个示例 peek例程 ListString fruits Arrays.asList(apple, banana, orange, grape); fruits.stream().filter(f - f.length() 5).peek(System.out::println).collect(Collectors.toList());中间操作的示例代码 ListString items Arrays.asList(apple, banana, orange, kiwi);// Filtering ListString filteredItems items.stream().filter(item - item.startsWith(a)).collect(Collectors.toList());// Sorting ListString sortedItems items.stream().sorted().collect(Collectors.toList());// Distinct ListString distinctItems items.stream().distinct().collect(Collectors.toList());// Limiting ListString limitedItems items.stream().limit(2).collect(Collectors.toList());// Skipping ListString skippedItems items.stream().skip(1).collect(Collectors.toList());函数式编程在流管道中可以包含0个或n个中间操作每个中间操作都返回一个新的流。 二、中间操作 映射器map()的用法 映射器map的方法签名原型 map(Function? super T, ? extends R mapper) - 它的输入参数是一个类型为函数接口的映射器可将流中的元素转换成其他类型的元素。映射器map()是把一个对象流变成另一种对象流。 另外三个与映射器map()类似的映射器它们则可以把一个对象流转换为基本类型流。 mapToInt(ToIntFunction? super T mapper) - 将元素映射为值的整型int流。mapToLong(ToLongFunction? super T mapper) - 将元素映射为值的长整型long流。mapToDouble(ToDoubleFunction? super T mapper) - 将元素映射为值的双精度浮点型double流。 用法一将一种流映射成另一种流 把英文的小写转换为大写的代码片断 // Mapping ListString items Arrays.asList(apple, banana, orange, grape); ListString mappedItems items.stream().map(String::toUpperCase).collect(Collectors.toList());下面是来看一个完整的示例。下图是这个流管道的详细分解说明图示 这个示例完整的程序源码 import java.util.Arrays; import java.util.List; import java.util.stream.Collectors; public class MapTest {public static void main(String[] args) {ListUser list Arrays.asList(new User(2001, Ricky), new User(2002, Alex), new User(2003, Bob));list.forEach(System.out::println);ListString newList list.stream().map(User::getName).sorted().limit(2).collect(Collectors.toList());newList.forEach(System.out::println);} }class User {private int id;private String name;public User(int id,String name) {this.id id;this.name name;}public String getName() {return name;}Overridepublic String toString() {return {User[ID:id 姓名name]};} }例程测试效果图 映射器map示例 实现功能整数列表每个元素3。分别用对象流和IntStream来实现。 使用的两个映射器的原型如下所示 //本示例使用的map()方法的签名其入口参数类型是Function函数如下 Integer StreamInteger java.util.stream.Stream.map(Function? super Integer, ? extends Integer mapper) //本示例使用的mapToInt()方法的签名其入口参数类型是ToIntFunction函数如下 IntStream java.util.stream.Stream.mapToInt(ToIntFunction? super Integer mapper)这两个流尽管入口参数的函数类型不一样但完全可以用同一个Lambda表达式来代替函数接口的实例作为传入参数。 但后续的处理方式有些不同映射器map()返回的是对象流可用收集器collect(Collectors.toList())来收集结果。映射器mapToInt()返回的是IntStream整型流不能使用用收集器。因为收集器收集的元素必须是对象IntStream中的元素是基本数据类型所以收集器不支持。 ListInteger intList Arrays.asList(1, 3, 5, 7, 9, 11);//对象流的实现方式ListInteger intListNew intList.stream().map(x - x 3).collect(Collectors.toList());System.out.println(每个元素3 intListNew);//用IntStream来实现System.out.println(打印IntStream);IntStream intStream intList.stream().mapToInt(x - x 3);intStream.forEach(System.out::println);测试效果图 mapToDouble基本数据类型流例程 基本数据类型流比如DoubleStream双精度浮点型流不能使用收集器收集结果但也有很多的终止操作比如求最大最小值、求和、求平均值 public static void main(String[] args) {ListDouble doubleList Arrays.asList(1.0, 22.0, 3.0, 4.0, 32.0);double average doubleList.stream().mapToDouble(Number::doubleValue).average().getAsDouble();double sum doubleList.stream().mapToDouble(Number::doubleValue).sum();double max doubleList.stream().mapToDouble(Number::doubleValue).max().getAsDouble();System.out.println(平均值 average 总和 sum 最大值 max); } 测试结果 平均值12.4总和62.0最大值32.0 三、中间操作 摊平映射器flatMap()的用法 flatMap(Function? super T, ? extends Stream? extends R mapper) - 将每个元素转换为某种元素类型的流然后将它们连接成一个流。 摊平映射器flatMap()示例一 public class StreamTest {public static void main(String[] args) {ListString list Arrays.asList(m,k,l,a, 1,3,5,7);ListString listNew list.stream().flatMap(s - {// 将每个元素转换成一个streamString[] split s.split(,);return Arrays.stream(split);}).collect(Collectors.toList());System.out.println(处理前的集合 list);System.out.println(处理后的集合 listNew);} }在这个例子中初始时对象流的元素类型是长度为7的字符串“m,k,l,a和1,3,5,7”。[ “m,k,l,a” “1,3,5,7” ]。通过摊平映射器flatMap()转换后的对象流的元素类型是长度为1的字符串。最终对象流为[ “m” , “k” , “l” , “a” , “1” , “3” , “5” , “7” ] 实际上上面的示例程序还可以简化可简化为 ListString listNew list.stream().flatMap(str-Stream.of(str.split(,))).collect(Collectors.toList());摊平映射器flatMap()示例二 package stream; import java.util.Arrays; import java.util.List; import java.util.stream.Collectors; import java.util.stream.Stream; public class FlatMapTest {public static void test1() {ListString items Arrays.asList(glass, brick,gold, silver);ListString flatMappedItems items.stream().flatMap(item - Stream.of(item.split())).collect(Collectors.toList());flatMappedItems.forEach(System.out::println);}public static void test2() {String songs Remember me to one who lives there;String[] words songs.split( );ListString strList Arrays.stream(words).map(s - s.split(e)).flatMap(e - Arrays.stream(e)).collect(Collectors.toList());strList.forEach(System.out::println);}public static void main(String[] args) {test1();test2();} }测试结果图 流的连接有两种方式。如果是两个流的连接可使用 Stream.concat() 方法 如果是三个及三个以上流的连接就使用 摊平映射器flatMap() 方法。 摊平映射器flatMap还可以用来实现流的连接请看例程 public static void concatStream() {String names[][] { {Alice, Alien, Bob},{Jack, John, Jobs},{Maria, Golf, Korea} };//两个流的连接StreamString concat Stream.concat(Arrays.stream(names[0]), Arrays.stream(names[1]));concat.forEach(System.out::println);System.out.println();//多个流的连接例子之一ListString[] list Arrays.asList(names);StreamString strStream list.stream().flatMap(e-Arrays.stream(e));strStream.forEach(System.out::println);System.out.println();StreamString first Stream.of(Alice, Alien, Bob);StreamString second Stream.of(Jack, John, Jobs);StreamString third Stream.of(Maria, Golf, Korea);//多个流的连接例子之二//StreamString stringStream Stream.of(first, second, third).flatMap(s-s);StreamString stringStream Stream.of(first, second, third).flatMap(Function.identity());stringStream.forEach(System.out::println);}说明 多个流的连接“例子之一”和“例子之二”实现相同功能。另外示例中“flatMap(Function.identity())”等价于“flatMap(s-s)”。 摊平映射器有很多例如摊平为基本数据类型流的映射器可由类型T的对象流转换为基本数据类型的流 IntStream flatMapToInt(Function? super T, ? extends IntStream mapper);LongStream flatMapToLong(Function? super T, ? extends LongStream mapper);DoubleStream flatMapToDouble(Function? super T, ? extends DoubleStream mapper); 映射器map和flatMap的区别 map()操作将每个元素转换成一个新元素并将所有这些新生成的元素收集到一个新的流中。 flatMap()操作将每个元素转换成一个新的流并将所有这些新生成的流合并成一个单一的流。 flatMap()和map()之间还有一个重要的区别那就是flatMap()支持处理包含嵌套数据结构的流。 参考文献 Java8 Stream2万字20个实例玩转集合的筛选、归约、分组、聚合-CSDN恕我直言你可能真的不会java系列-CSDNJava8 Stream流使用-CSDNJava 8 Stream API从基础到高级掌握流处理的艺术JAVA8专题-Stream流操作详解Java 8新特性Stream()流Java8 特性笔记(四) Stream 第1篇lambda表达式会用了么 第2篇Java Stream API 第3篇Stream的Filter与谓词逻辑 第4篇Stream管道流Map操作 第5篇Stream的状态与并行操作 第7篇像使用SQL一样排序集合 第8篇-函数式接口 第9篇-元素的匹配与查找 第10篇-集合元素归约 第11篇-Stream API终端操作 Java Stream函数式编程第三篇管道流结果处理
http://www.sczhlp.com/news/235534/

相关文章:

  • 西安做网站公司xamokj成都市住房和城乡建设官网
  • 蜗牛星际做网站海口建站平台
  • 生态旅游网站的建设什么是网站的推广
  • 自己做视频类网站用哪个cms建设网站企业银行
  • 济南建站公司电话企业门户网站数据库设计
  • 网站建设模板型和定制型上海封闭饿死多少人
  • 免费稳定网站空间企业做网站有发展么
  • 网站建设框架模板谷歌seo教程
  • 甘肃建网站网址导航浏览器下载
  • 配置idea创建文件时自动生成注解(如类注释、作者信息等)
  • 20232307 2025-2026-1 《网络与系统攻防技术》实验三实验报告
  • PostgreSQL 服务版
  • 做网站是com好还是cn好建网站需要注意什么
  • 如何建立自己的手机网站网站认证空间
  • 房地产设计网站电脑网站显示安全证书有问题怎么解决
  • 一男一女做那个的动漫视频网站湖南常德职业技术学校
  • 郑州餐饮网站建设公司排名企业网站开发创意
  • 网站建设便宜的公司廊坊网站建设方案
  • app网站排名网上商城系统需求分析
  • 做淘宝客需要自己建网站吗网站右下角弹窗代码
  • 做翻译 英文网站东莞百姓网招聘
  • 天门市网站建设网页游戏大全找556pk游戏专业
  • 广西代理网站建设公司百度店铺怎么入驻
  • 新的网站建设吉林省住房城乡建设厅网站
  • 广州市开发区建设网站网站的信息管理建设的必要性
  • 吉林省长春市建设局网站益阳网站制作公司
  • 怎么做网站门户网站建设基础心得
  • 荥阳市城乡建设规划网站网站空间选择
  • 坐标系与投影关系
  • 2025年10月办公家具供应商综合评测:服务与性价比的平衡之道