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

中国建设银行甘肃省分行官网站塘沽信息

中国建设银行甘肃省分行官网站,塘沽信息,全美网站建设,godaddy服务器做网站目录 1.0 Stream 流的说明 2.0 Stream 流对象的创建 2.1 对于 Collection 系列集合创建 Stream 流对象的方式 2.2 对于 Map 系列集合创建 Stream 流对象的方式 2.3 对于数组创建 Stream 流对象的方式 3.0 Stream 流的中间方法 3.1 Stream 流的 filter() 中间方法 3.2 Stream 流…目录 1.0 Stream 流的说明 2.0 Stream 流对象的创建 2.1 对于 Collection 系列集合创建 Stream 流对象的方式 2.2 对于 Map 系列集合创建 Stream 流对象的方式 2.3 对于数组创建 Stream 流对象的方式 3.0 Stream 流的中间方法 3.1 Stream 流的 filter() 中间方法 3.2 Stream 流的 sorted() 中间方法 3.3 Stream 流的 limit(x) 中间方法 3.4 Stream 流的 skip(x) 中间方法 3.5 Stream 流的 map() 中间方法 3.6 Stream 流的 distinct() 中间方法 3.7 Stream 流的 concat() 中间方法 4.0 Stream 流的终结方法 4.1 Stream 流的 forEach 终结方法 4.2 Stream 流的 count() 终结方法 4.3 Stream 流的 max() 或者 min() 终结方法 5.0 Stream 流的 collect() 收集方法 1.0 Stream 流的说明 Stream流是一种数据处理的概念它可以用来处理集合、数组或输入/输出等数据源的元素序列。流可以看作是一个从源到目标的元素序列可以通过一系列连续的操作对其进行处理。流的操作可以分为两种类型中间操作和终端操作。中间操作是对流进行处理并返回一个新的流而终端操作是对流进行最终的处理并返回一个结果或副作用。 2.0 Stream 流对象的创建 主要以数组、集合来创建 Stream 流对象。 2.1 对于 Collection 系列集合创建 Stream 流对象的方式 直接用集合对象.stream() 实例方法创建 Stream 流对象。 以代码的形式来具体介绍 // List 集合系列来创建 Stream 流对象ListString list new ArrayList();Collections.addAll(list,张三,李四,王五,张麻子);StreamString stream list.stream();// Set 集合系列来创建 Stream 流对象SetString set new HashSet();Collections.addAll(set,张三,李四,王五,张麻子);StreamString stream1 set.stream();         2.2 对于 Map 系列集合创建 Stream 流对象的方式 具体来介绍两种方式第一种方法把键值对“封装”成一个整体。第二种方法分别把集合中的键和值全部获取出来单独放在各个集合中。 以代码的形式来具体介绍 // Map 集合系列来创建 Stream 流对象MapString,Integer m new HashMap();m.put(张三,19);m.put(李四,28);m.put(王五,33);m.put(张麻子,22);//第一种方法:把键值对“封装”成一个整体SetMap.EntryString,Integer entries m.entrySet();StreamMap.EntryString,Integer stream2 entries.stream();//第二种方法:分别把集合中的键和值全部获取出来单独放在系列集合中SetString k m.keySet();CollectionInteger v m.values();StreamString stream3 k.stream();StreamInteger stream4 v.stream(); 2.3 对于数组创建 Stream 流对象的方式 具体来介绍有两种方式来创建对象第一种方法用 Arrays.stream() 方法来创建。第二种方法用 Stream.of() 方法来创建。 以代码的形式来具体介绍 // 用数组来创建 Stream 流对象String[] strings new String[]{张三,李四,王五,张麻子};//第一种方法用 Arrays.stream() 方法来创建StreamString stream5 Arrays.stream(strings);//第二种方法用 Stream.of() 方法来创建StreamString stream6 Stream.of(strings);3.0 Stream 流的中间方法 Stream 流的中间方法主要用于对流中的元素进行处理返回一个新的流对象。这些中间方法可以组合使用形成流水线式的处理流程方便进行复杂的数据处理操作。 3.1 Stream 流的 filter() 中间方法 用于对流中的数据进行过滤。 通过具体代码实现 import java.util.ArrayList; import java.util.Collections; import java.util.List;public class StreamIntermediateMethod {public static void main(String[] args) {ListString list new ArrayList();Collections.addAll(list,张三,李四,王五,张麻子);//对一下代码解读:首先用 stream() 得到了该集合的流//然后用 filter() 用于对流中的数据进行过滤也可以理解成筛选字符串中带有“张”的,返回新流//该新流中都是含“张”的字符串接着把流中的数据进行用 forEach() 方法进行遍历。/*list.stream().filter(s - s.contains(张)).forEach(s- System.out.println(s));*///对以上代码稍微简化如以下list.stream().filter(s - s.contains(张)).forEach(System.out::println);} } 运行结果如下 3.2 Stream 流的 sorted() 中间方法 按照指定规则排序。 通过具体代码实现 import java.util.ArrayList; import java.util.List;public class StreamIntermediateMethod {public static void main(String[] args) {ListStudent list new ArrayList();list.add(new Student(张三,19));list.add(new Student(李四,22));list.add(new Student(王五,17));list.add(new Student(张麻子,33));//解读以下代码首先先利用 stream() 方法来获取该集合的流然后用 sorted() 方法由于是自定义类型的对象//默认的 sorted() 方法是搞不定所以需要重写方法因此可以接入这个匿名内部类来重写内部的具体方法//排完序之后会得到一个新的流然后经过 forEach 方法来遍历该流中的数据。list.stream().sorted((o1, o2)- o1.getAge() - o2.getAge()).forEach(s- System.out.println(s));//以上代码话可以继续简化,效果是一样的System.out.println(--------------------------------------------------------------------);list.stream().sorted((o1, o2)- o1.getAge() - o2.getAge()).forEach(System.out::println);} } 运行结果如下 3.3 Stream 流的 limit(x) 中间方法 获取前面 x 个元素。 通过具体代码实现 import java.util.ArrayList; import java.util.List;public class StreamIntermediateMethod {public static void main(String[] args) {ListStudent list new ArrayList();list.add(new Student(张三,19));list.add(new Student(李四,22));list.add(new Student(王五,17));list.add(new Student(张麻子,33));//对一下代码进行解读先获取该集合的流然后用 limit(2) 中间方法获取前面2个元素//返回新流接着对新流进行遍历输出元素list.stream().limit(2).forEach(System.out::println);} } 运行结果如下 3.4 Stream 流的 skip(x) 中间方法 跳过前面 x 个元素。 通过具体代码实现 import java.util.ArrayList; import java.util.List;public class StreamIntermediateMethod {public static void main(String[] args) {ListStudent list new ArrayList();list.add(new Student(张三,19));list.add(new Student(李四,22));list.add(new Student(王五,17));list.add(new Student(张麻子,33));//对一下代码进行解读先得到该集合的流然后用 skip(2) 中间方法跳过前面2个元素//得到的新流中包含后面两个元素然后就进行遍历了。list.stream().skip(2).forEach(System.out::println);} } 运行结果如下 3.5 Stream 流的 map() 中间方法 对元素进行加工并返回对应的新流。映射 通过代码具体实现 import java.util.ArrayList; import java.util.List;public class StreamIntermediateMethod {public static void main(String[] args) {ListStudent list new ArrayList();list.add(new Student(张三,19));list.add(new Student(李四,22));list.add(new Student(王五,17));list.add(new Student(张麻子,33));//解读以下代码: 先得到该集合的流然后调用 map() 中间方法//将对应的元素进行加工简单的来说就是将原先的元素加工成自己想要的形式//以下就是将学生类对象加工成字符串[张三,19] - 张三每一个元素都是一一对应、映射的。list.stream().map(s-s.getName()).forEach(System.out::println);} } 运行结果如下 3.6 Stream 流的 distinct() 中间方法 去除流中重复的元素。但是对于自定义类型的元素默认的 distinct() 方法是不能完成去除重复的元素。希望内容一样就认为重复这就需要重写 hashCode() 与 equals() 方法。 通过代码具体实现 import java.util.ArrayList; import java.util.List;public class StreamIntermediateMethod {public static void main(String[] args) {ListStudent list new ArrayList();list.add(new Student(张三,19));list.add(new Student(李四,22));list.add(new Student(王五,17));list.add(new Student(张麻子,33));list.add(new Student(张三,19));//解读以下代码: 先获取该集合中的流然后调用 distinct() 方法但是该流中的元素是自定义//所以希望内容一样就认为重复这就需要重写 hashCode() 与 equals() 方法。//去重后返回一个新流。list.stream().distinct().forEach(System.out::println);} } 运行结果如下 如果对重写 hashCode() 与 equals() 方法不太熟悉可以点击以下链接去了解以下         进阶JAVA篇-深入了解 Set 系列集合-CSDN博客 3.7 Stream 流的 concat() 中间方法 合并 a 和 b 两个流为一个流。 通过代码具体实现 import java.util.ArrayList; import java.util.List; import java.util.stream.Stream;public class StreamIntermediateMethod {public static void main(String[] args) {ListStudent list new ArrayList();list.add(new Student(张三,19));list.add(new Student(李四,22));list.add(new Student(王五,17));list.add(new Student(张麻子,33));ListStudent list1 new ArrayList();list1.add(new Student(李麻子,23));StreamStudent stream Stream.concat(list.stream(),list1.stream());stream.forEach(System.out::println);} } 运行结果如下 4.0 Stream 流的终结方法 Stream 流的终结方法用于对流进行最终的处理并返回一个结果或副作用。对流进行最终的处理并获取结果。需要注意的是终结方法只能对流进行一次操作一旦流被消费就不能再次使用。 4.1 Stream 流的 forEach 终结方法 对此流运算后的元素执行后遍历。 通过代码具体实现 import java.util.ArrayList; import java.util.List; import java.util.stream.Stream;public class StreamIntermediateMethod {public static void main(String[] args) {ListStudent list new ArrayList();list.add(new Student(张三,19));list.add(new Student(李四,22));list.add(new Student(王五,17));list.add(new Student(张麻子,33));ListStudent list1 new ArrayList();list1.add(new Student(李麻子,23));Stream.concat(list.stream(),list1.stream()).forEach(System.out::println);} } 运行结果如下 4.2 Stream 流的 count() 终结方法 统计此流运算后的元素个数。需要注意的是返回值是 long 类型。 通过代码具体实现 import java.util.ArrayList; import java.util.List; import java.util.stream.Stream;public class StreamIntermediateMethod {public static void main(String[] args) {ListStudent list new ArrayList();list.add(new Student(张三,19));list.add(new Student(李四,22));list.add(new Student(王五,17));list.add(new Student(张麻子,33));ListStudent list1 new ArrayList();list1.add(new Student(李麻子,23));System.out.println(Stream.concat(list.stream(), list1.stream()).count());} } 运行结果如下 4.3 Stream 流的 max() 或者 min() 终结方法 获取此流运算后的最大值或者最小值元素。但是对于自定义的类型默认的 max() 方法是不能获取此流的最大值元素默认的 min() 方法是不能获取此流的最小值元素会报异常此时就需要用到比较器了。 通过代码具体实现 import java.util.ArrayList; import java.util.List;public class StreamIntermediateMethod {public static void main(String[] args) {ListStudent list new ArrayList();list.add(new Student(张三, 19));list.add(new Student(李四, 22));list.add(new Student(王五, 17));list.add(new Student(张麻子, 33));Student s1 list.stream().max((o1, o2) - o1.getAge() - o2.getAge()).get();System.out.println(最大年龄为s1.getAge());Student s2 list.stream().min((o1, o2) - o1.getAge() - o2.getAge()).get();System.out.println(最小年龄为s2.getAge());} } 运行结果如下 5.0 Stream 流的 collect() 收集方法 把流处理后的结果收集到一个指定的集合中去。 通过代码具体实现 一. 收集到 list 系列集合中 import java.util.stream.Collectors; import java.util.ArrayList; import java.util.List;public class StreamIntermediateMethod {public static void main(String[] args) {ListStudent list new ArrayList();list.add(new Student(张三, 19));list.add(new Student(李四, 22));list.add(new Student(王五, 17));list.add(new Student(张麻子, 33));//对以下代码进行解读先得到该集合的流再筛选开头为“张”的名字得到一个新流再收集到 List 系列集合中。ListStudent list1 list.stream().filter(s-s.getName().startsWith(张)).collect(Collectors.toList());System.out.println(list1);} } 运行结果如下 二.收集到 Set 系列集合中 import java.util.*; import java.util.stream.Collectors;public class StreamIntermediateMethod {public static void main(String[] args) {ListStudent list new ArrayList();list.add(new Student(张三, 19));list.add(new Student(李四, 22));list.add(new Student(王五, 17));list.add(new Student(张麻子, 33));//对一下代码进行解读: 先得到该集合的流再进行筛选出年龄大于18的元素// 最后再将这些集合中的元素收集到 Set 系列集合中。Set Student set list.stream().filter(s-s.getAge() 18).collect(Collectors.toSet());System.out.println(set);} } 运行结果如下 三.收集到 Map 系列集合中 import java.util.*; import java.util.stream.Collectors;public class StreamIntermediateMethod {public static void main(String[] args) {ListStudent list new ArrayList();list.add(new Student(张三, 19));list.add(new Student(李四, 22));list.add(new Student(王五, 17));list.add(new Student(张麻子, 33));MapString,Integer map list.stream().collect(Collectors.toMap(s- s.getName(), s- s.getAge()));System.out.println(map);} } 运行结果如下 四.收集到数组中 import java.util.*;public class StreamIntermediateMethod {public static void main(String[] args) {ListStudent list new ArrayList();list.add(new Student(张三, 19));list.add(new Student(李四, 22));list.add(new Student(王五, 17));list.add(new Student(张麻子, 33));Student[] students list.stream().toArray(s-new Student[s]);//以上代码简化为如下:Student[] students1 list.stream().toArray(Student[]::new);System.out.println(Arrays.toString(students));System.out.println(Arrays.toString(students1));} } 运行结果如下 本篇就先讲到这里点击以下链接有更多篇目小扳_-CSDN博客
http://www.hkea.cn/news/14505380/

相关文章:

  • 网站推广方法 优帮云宣传部网站建设计划书
  • 新农村建设投诉网站清远最新通知
  • 网站建设企划书爱山东app下载注册流程
  • 外贸网站推广机构个人网页设计与实现论文免费
  • 花钱做网站注意些什么营销案例分析网站
  • 给网站做游戏视频怎么赚钱二次开发教程
  • 潍坊网站建设如何跳出率 网站
  • 西安城乡建设网站近期网络营销的热点事件
  • 陕西网站建设设计福州手机建站模板
  • 灌阳县建设局门户网站在哪里建立个人网站
  • 图库网站建设网站生成系统
  • 南阳做网站公司哪家好杭州制作公司网站
  • wordpress 模板 国外徐州网站seo公司
  • 天长做网站公司黄骅招聘信息最新2022
  • 微信网站建设协议网站界面ui设计国家开放大学答案
  • cms建站系统免费公众微信网站建设
  • 布吉网站建设技术托管上海网站建设公司站霸网络
  • 深圳网站设计网站开发经典案例
  • 做网站的所有代码西部数码网站管理助手serv-u默认密码
  • 怎样找需要做网站客户微信网页版客户端下载
  • 国外图片设计网站有哪些网站建设公司 知道万维科技
  • 做个网站哪里可以做中国互联网协会副理事长
  • 网站建设有哪些岗位职责网站开发集成环境
  • 手把手教你做网站网站建设:中企动力
  • 机械类网站模板国贸附近网站建设
  • 网站推广洛阳wordpress网站音乐播放
  • 高端网站设计v芯hyhyk1推好凤凰手机网官网
  • 网站收录做关键词排名微信开发者工具代码
  • 深圳集团网站开发网站开发公司何鹏seo
  • app开发网站排行榜外贸网站建设销售常用语