电商网站有哪些功能模块wordpress中文版书籍

news/2025/10/7 4:55:08/文章来源:
电商网站有哪些功能模块,wordpress中文版书籍,谷歌商店官网,代理记账一般多少钱一个月#x1f468;‍#x1f393;作者简介#xff1a;一位大四、研0学生#xff0c;正在努力准备大四暑假的实习 #x1f30c;上期文章#xff1a;JAVASE进阶#xff1a;源码精读——HashMap源码详细解析 #x1f4da;订阅专栏#xff1a;JAVASE进阶 希望文章对你们有所帮助… ‍作者简介一位大四、研0学生正在努力准备大四暑假的实习 上期文章JAVASE进阶源码精读——HashMap源码详细解析 订阅专栏JAVASE进阶 希望文章对你们有所帮助 Stream流的使用是一种高级的写法配合函数式编程lambda表达式能够极大简化我们程序的编写有些二十行的代码也可以一行代码就实现代码看起来也高雅了很多这也是成为高级程序员的必会技能。 先讲原理再实现一些例子。 一文精通Stream流函数式编程 引入Stream流思想获取Stream流Stream流的中间方法Stream流终结方法详解收集方法collect练习数字过滤字符串过滤并收集自定义对象过滤并收集 引入 现在实现一个简单的需求创建一个集合来存储名字并且输出名字长度为3且姓为“张”的所有名字。 这里直接用ArrayList模拟起来还是很简单的但是当相对还是要写很长的语句而Stream流和Lambda表达式的集合能够极大地非常简化我们的代码编写处理集合并输出的语句只需要一句话 list.stream().filter(name-name.startWith(张)).filter(name-name.length()3).forEach(name-System.out.println(name));这代码对一个程序员的诱惑程度别提有多大。 Stream流思想 流可以视为流水线学过计算机系统都知道流水线的相关原理它可以大大提升执行的性能。 如上例子可以分为流水线中的3个子任务过滤留下“张”姓开头的过滤留下长度为3的输出。 对于每一个子任务Stream流一般都会结合lambda表达式来简化集合、数组的操作。 Stream流的使用步骤 1、先得到一条Stream流流水线并把数据放上去 2、利用Stream流的API进行各种操作 1中间方法过滤、转换 2终结方法统计、打印 获取Stream流 获取方式方法名说明单列集合stream()Collection中的默认方法双列集合无无法直接使用是Stream流需要先通过keySet或entrySet转换成单列集合数组stream(T[] array)Arrays工具类中的静态方法一堆零散数据of(T…values)Stream接口中的静态方法 1、单列集合 ArrayListString list new ArrayList(); Collections.addAll(list, a, b, c, d); //StreamString stream list.stream()可以获取流但一般不这么用而是直接一路链式编程 list.stream().forEach(s-System.out.println(s));//forEach是终结方法2、双列集合 HashMapString, Integer map new HashMap(); map.put(aaa, 111);map.put(bbb, 222); //方法一把key都拿出来单独做处理 map.keySet().stream().forEach(s-System.out.println(s)); //方法二获取每个键值对对象 map.entrySet().stream().forEach(s-System,out.println(s));3、数组 int[] arr {1,2,3,4,5}; Arrays.stream(arr).forEach(s-System,out.println(s));4、零散数据 Stream.of(1,2,3,4,5).forEach(s-System,out.println(s)); Stream.of(a,b,c).forEach(s-System,out.println(s));在很多时候都是推荐使用of方法这是因为of方法形参写法为T...values这是一种可变参数的书写形式所以无论传递零散的数据还是一个数组都是可以成功处理的。 但是有一个很关键的点of方法传入的数组里面的数据必须是引用数据类型的如果是基本数据类型那么只会把这一整个数组当作一个元素输出的会是地址 Stream流的中间方法 名称说明filter过滤limit获取前几个元素skip跳过前几个元素distinct元素去重依赖hashCode和equals方法concat合并a和b两个流为一个流map转换流中的数据类型 注意 1、中间方法会返回新的流原来的Stream流只能使用一次建议使用链式编程 2、修改Stream流中的数据不会影响原来集合或数组中的数据 1、filter 1匿名内部类 list.stream().filter(new PredicateString() {Overridepublic boolean test(String s){//返回值为true则表示当前数据留下return s.startWith(张);} }).forEach(s-System.out.println(s));2lambda表达式 list.stream().filter(s-s.startWith(张)).forEach(s-System.out.println(s));2、limit //输出前3个 list.stream().limit(3).forEach(s-System.out.println(s));3、skip //跳过前4个 list.stream().skip(4).forEach(s-System.out.println(s));4、distinct list.stream().distinct().forEach(s-System.out.println(s));distinct的底层是非常复杂的其核心是使用HashSet实现去重的 5、concat尽可能让两个stream流中的数据保持一致不然会将数据类型变成它们的共同父类导致缺失一些子类的特有功能 Stream.concat(list1.stream(), list2.stream()).forEach(s-System.out.println(s));6、map实现流中数据的类型转换将String类型字符串中的年龄转换成int并输出 Collections.addAll(list, 一二-12, 布布-14);1匿名内部类 list.stream().map(new FunctionString, Integer(){//String表示stream中的数据类型Integer表示要转换的数据类型不能写int必须写包装类默认为ObjectOverridepublic Integer apply(String s){//s表示stream流里的每一个数据返回值为转换后的数据String[] arr s.split(-);String ageString arr[1];int age Integer.parseInt(ageString);return age;} }).forEach(s-System.out.println(s));2lambda表达式 list.stream().map(s-Integer.parseInt(s.split(-)[1])).forEach(s-System.out.println(s));这个lambda表达式写起来剪枝不要太爽 Stream流终结方法详解 名称说明forEach遍历count统计toArray收集流中数据放到数组中collect收集流中数据放到集合中 1、forEach 1匿名内部类 list.stream().forEach(new ConsumerString(){Overridepublic void accept(String s){System.out.println(s)} });2lambda表达式 list.stream().forEach(s-System.out.println(s));2、count统计 long count list.stream().count();3、toArray收集int类型数据到String类型数组中 1匿名内部类 //注意IntFunction中要传递数组泛型所以需要传入String[] String[] arr list.stream().toArray(new new IntFunctionString[]() {Overridepublic void apply(int value){//value表示数组的长度方法体只需要创建一个数组即可返回的类型要和泛型一致return new String[value];} }); System.out.println(Arrays.toString(arr));2lambda表达式 String[] arr list.stream().toArray(value-new String[value]); System.out.println(Arrays.toString(arr));collect方法算是比较重要的方法了在后面详细讲解。 收集方法collect collect可以将流里面的数据收集到单列集合或双列集合中去的。 收集到List集合 ListString list new ArrayList();Collections.addAll(list, 张无忌-男-15, 小龙女-女-12, 一二-女-4, 布布-男-5);//把所有的男性收集起来ListString newList list.stream().filter(s - 男.equals(s.split(-)[1])).collect(Collectors.toList());System.out.println(newList);同样的也可以收集到Set中去单列集合还是比较方便的。 如果要收集到双列集合Map中就需要指定键和值是哪个字段 可以打开ToMap的底层源码可以清楚的看到调用toMap方法需要指定键和值的规则其底层会自动的创建一个HashMap对象 收集到Map集合里面的代码和细节如下所示需要注意的是要想收集Map必须保证键是不重复的。 1匿名内部类 //键姓名 值年龄MapString, Integer map list.stream().filter(s - 男.equals(s.split(-)[1]))/*** toMap参数一表示键的生成规则* 参数二表示值的生成规则** 参数一* Function泛型一流中每一个数据的类型* 泛型二Map集合中键的数据类型* 方法apply形参依次表示流里面的每一个数据* 方法体生成键的代码* 返回值已经生成的键* 也就是说Function中第一个泛型与apply的形参一致第二个泛型与apply的返回类型一致** 参数二同理*/.collect(Collectors.toMap(new FunctionString, String() {Overridepublic String apply(String s) {return s.split(-)[0];}},new FunctionString, Integer() {Overridepublic Integer apply(String s) {return Integer.parseInt(s.split(-)[2]);}}));System.out.println(map);2lambda表达式 MapString, Integer map list.stream().filter(s - 男.equals(s.split(-)[1])).collect(Collectors.toMap(s-s.split(-)[0],s-Integer.parseInt(s.split(-)[2])));练习 数字过滤 定义一个集合并添加整数1-10过滤奇数只留下偶数并将结果保存起来 ArrayListInteger list new ArrayList(); Collections.addAll(list, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10); ListInteger list1 list.stream().filter(s - (s 1) 0).collect(Collectors.toList()); System.out.println(list1);字符串过滤并收集 创建一个ArrayList集合并添加以下字符串 “zhangsan,23” “lisi,24” “wangwu,25” 保留年龄大于等于24岁的人并将结果收集到Map集合中姓名为键年龄为值 public static void main(String[] args) {String s1 a, s2 b;//System.out.println(s1.compareTo(s2));ArrayListString list new ArrayList();Collections.addAll(list, zhangsan,23, lisi,24, wangwu,25);//filter也可以转换成Integer类型再去做比较MapString, Integer map list.stream().filter(s - 24.compareTo(s.split(,)[1]) 0).collect(Collectors.toMap(s - s.split(,)[0],s - Integer.parseInt(s.split(,)[1])));System.out.println(map);}自定义对象过滤并收集 自行去创建一个Actor对象String类型的name、int类型的age并且重写toString方法。 代码如下 public static void main(String[] args) {ArrayListString manList new ArrayList();ArrayListString womenList new ArrayList();Collections.addAll(manList, 坤坤,24, 再多,23, 看一眼,20, 就快,19, 要爆炸,22, 铁山靠,26);Collections.addAll(womenList, 朵拉,21, 杨幂,30, 杨超越,22, 露娜,25, 妲己,24, 安琪拉,23);StreamString stream1 manList.stream().filter(s - s.split(,)[0].length() 3).limit(2);StreamString stream2 womenList.stream().filter(s-s.startsWith(杨)).skip(1);ListActor list Stream.concat(stream1, stream2).map(new FunctionString, Actor() {Overridepublic Actor apply(String s) {return new Actor(s.split(,)[0], Integer.parseInt(s.split(,)[1]));}}).collect(Collectors.toList());}System.out.println(list);其中map里面的匿名内部类还可以转化为lambda表达式 s-new Actor(s.split(,)[0], Integer.parseInt(s.split(,)[1]))

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/929967.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

珠海建设集团网站首页商城网站支付系统怎么做

MySQL 是个服务,所以我们可以借用 Google 四个黄金指标的思路来解决问题。 1、延迟 应用程序会向 MySQL 发起 SELECT、UPDATE 等操作,处理这些请求花费了多久,是非常关键的,甚至我们还想知道具体是哪个 SQL 最慢,这样…

怎么让百度收录网站所有网页网站开发net教程

本文介绍基于VBA语言,对大量含有图片、文本框与表格的Word文档加以批量自动合并,并在每一次合并时添加分页符的方法。 在我们之前的文章基于Python中docx与docxcompose批量合并多个Word文档文件并逐一添加分页符(https://blog.csdn.net/zhebu…

原创文章网站百度蜘蛛对视频网站的抓取

Java/Python/Go不同开发语言基础数据结构和相关操作总结 1. Java1.1 静态数组Object[]1.1.1 数据结构和定义方式1.1.2 增加1.1.3 修改1.1.4 查询1.1.5 删除1.1.6 获取元素的位置1.1.7 获取总长度1.1.8 正向排序1.1.9 逆向排序 1.2 动态列表List\<Object>1.2.1 数据结构和…

网站颜色背景代码做网站首页图的规格

作者&#xff1a;IT邦德 中国DBA联盟(ACDU)成员&#xff0c;10余年DBA工作经验 擅长主流数据Oracle、MySQL、PG、openGauss运维 备份恢复&#xff0c;安装迁移&#xff0c;性能优化、故障应急处理等可提供技术业务&#xff1a; 1.DB故障处理/疑难杂症远程支援 2.Mysql/PG/Oracl…

寮步网站制作模型下载网站开发流程图

本篇文章主要给大家介绍mysql数据库怎么创建外键。关于mysql数据库外键的基础介绍&#xff0c;我们在这篇文章【Mysql外键是什么&#xff1f;有哪些用处&#xff1f;】中&#xff0c;已经给大家介绍过了&#xff0c;需要的朋友可以选择参考。了解了外键的基础定义&#xff0c;那…

wordpress网站mip改造网站开发建站

php课程 8-28 php如何绘制生成显示图片 一、总结 一句话总结&#xff1a;gd库轻松解决 1、php图片操作生成的图的两种去向是什么&#xff1f; 一种在页面直接输出&#xff0c;一种存进本地磁盘 2、php操作图片的库有哪些&#xff1f; PHP: Image Processing and Generation - M…

如何用万网建设网站广告投放运营

目录 一、Cookie是什么&#xff1f; 二、Session是什么? 三、Cookie的工作流程 四、Session的工作流程 五、Session和Cookie的区别和联系 一、Cookie是什么&#xff1f; Cookie是一种在网站和用户之间交换信息的机制。它是由Web服务器发送给用户浏览器的小型文本文件&#xff…

seo综合查询爱站怎么拥有个人网站

文章目录 引言基于Netty实现TCP客户端Netty发送GBK编码指令Netty接收GBK编码基于Channel发送指令基于ChannelHandlerContext发送指令:建立连接时发送登陆指令开启日志,查看报文信息基于ChannelInboundHandlerAdapter进行业务逻辑处理原生API实现TCP客户端基于DataOutputStrea…

桥头网站建设做外汇都要看什么网站

题目&#xff1a; 本题要求编写一个解密藏尾诗的程序。 注&#xff1a;在 2023 年 1 月 17 日 15 点 14 分以后&#xff0c;该题数据修改为 UTF-8 编码。 输入格式&#xff1a; 输入为一首中文藏尾诗&#xff0c;一共四句。每句一行&#xff0c;但句子不一定是等长的&#…

设计公司品牌网站想接做网站的单子

原标题&#xff1a;微信转发这种视频会感染病毒泄露隐私&#xff1f;网警的查证结果来了最近网上流传一条“紧急通知”&#xff0c;称微信上流传着一些必须转发后才能继续观看的视频&#xff0c;这些视频其实被内植病毒&#xff0c;一旦转发&#xff0c;机主隐私立马被泄露。真…

黄页88网站推广效果校园二手网站开发与设计任务书

序言 在深度学习的蓬勃发展中&#xff0c;模型的性能与泛化能力成为了研究者们关注的焦点。然而&#xff0c;实际应用中的数据往往伴随着各种噪声&#xff0c;这些噪声不仅来源于数据采集过程中的硬件限制&#xff0c;还可能由环境干扰、传输错误等因素引入。噪声的存在严重影…

中国建设银行网站的社保板块在哪wordpress 百度网盘插件

文章目录 导读概念符号表IOB标记概率无向图模型MRF的因子分解团与最大团有向图模型 条件随机场线性链条件随机场 特征函数对数线性模型参数化形式简化形式矩阵形式 概率计算 导读 条件随机场是给定一组输入随机变量的条件下另一组输出随机变量的条件概率分布模型&#xff0c;其…

广州建网站公司排名舟山网站网站建设

用户界面套包DevExpress v18.1日前终于正式发布&#xff0c;本站将以连载的形式为大家介绍各版本新增内容。本文将介绍了DevExpress WPF v18.1 的新功能&#xff0c;快来下载试用新版本&#xff01;点击下载>> Spreadsheet Control Spreadsheet Shapes 从简单的线条、矩形…

网站开发的硬件环境和软件怎么写域名网站如何做市场推广

在目标检测任务中&#xff0c;数据标注是模型训练的关键环节。常用的标注工具有Labelimg和 Labelme&#xff0c;它们均能够以直观的方式对图像中的目标进行标注&#xff0c;并生成包含标注信息的TXT文件或者 JSON 文件。然而&#xff0c;YOLO模型使用的是特定格式的 .txt 文件作…

南通通州住房和城乡建设网站个人网站备案 服务内容怎么写

20169310 2016-2017-2 《网络攻防实践》第6周学习总结 教材学习内容总结 本周主要学习了《网络攻防---技术与实践》第5、6章的内容&#xff0c;主要学习了 TCP/IP网络协议攻击 和 网络安全防范技术 TCP/IP网络协议攻击概述 网络安全的属性&#xff1a;机密性 、完整性 、可用性…

百度官方入口长沙网站seo厂家

亲爱的开发者朋友们,你是否曾经遇到过这样一个令人困惑的场景:你辛辛苦苦地往数据库里插入了新数据,信心满满地打开数据库文件一看,结果却发现新数据仿佛人间蒸发了一般?不要慌,这篇文章将为你揭开这个神秘现象的面纱。 让我们从一个真实的故事开始。 小明是一个移动应用开发…

花店网站模板wordpress随意布局

安装和设置 WebDAV Server WebDAV 是一种基于HTTP的协议扩展&#xff0c;它允许用户在远程Web服务器上进行文档的编辑和管理&#xff0c;就如同这些文件存储在本地计算机上一样。使用WebDAV&#xff0c;用户可以创建、移动、复制和修改文件和文件夹。 安装和设置 Cloud Sync…

好的装修网站国内免费推广网站

题目 给你一个长度为 n 的链表&#xff0c;每个节点包含一个额外增加的随机指针 random &#xff0c;该指针可以指向链表中的任何节点或空节点。 构造这个链表的 深拷贝。 深拷贝应该正好由 n 个 全新 节点组成&#xff0c;其中每个新节点的值都设为其对应的原节点的值。新节点…

wordpress 站点标题漳州做网站建设

在基于RPM的Linux发行版中&#xff0c;如CentOS、Red Hat Enterprise Linux或Fedora&#xff0c;你可以使用yum&#xff08;在较旧版本中&#xff09;或dnf&#xff08;在较新版本中&#xff09;来安装moreutils软件包。不过需要注意的是&#xff0c;默认的官方仓库可能并未包含…

规范 加强网站建设管理成品ppt网站国外

微服务架构和分布式架构的区别 有&#xff1a;1、含义不同&#xff1b;2、概念层面不同&#xff1b;3、解决问题不同&#xff1b;4、部署方式不同&#xff1b;5、耦合度不同。其中&#xff0c;含义不同指微服务架构是一种将一个单一应用程序开发为一组小型服务的方法&#xff…