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

加强机构编制网站建设力度宁波四方网络网站建设

加强机构编制网站建设力度,宁波四方网络网站建设,门户网站 建设 如何写,优秀的浏览器主页目录 一、Steam流1.定义2.Stream流的使用步骤代码演示#xff1a; 3.获取Stream流#xff1a;代码演示#xff1a; 4.中间方法代码演示#xff1a; 5.常用终结方法6.收集Stream流代码演示#xff08;5#xff0c;6#xff09;#xff1a; 7.方法中可变参数8.Collection… 目录 一、Steam流1.定义2.Stream流的使用步骤代码演示 3.获取Stream流代码演示 4.中间方法代码演示 5.常用终结方法6.收集Stream流代码演示56 7.方法中可变参数8.Collections工具类代码演示78 一、Steam流 1.定义 JDK8开始新增的一套API可以用来操作集合或者数组的数据。 优势Stream流大量的结合了Lambda的语法风格来编程功能强大性能高效代码间接可读性好。 2.Stream流的使用步骤 1.获取数据流代表一条流水线并能与数据源建立连接。2.调用流水线的各种方法对数据进行处理、计算3.获取处理的结果遍历、统计、收集到一个新集合中返回。 代码演示 package com.item.deom3Stream;import java.util.*; import java.util.stream.Collectors; public class Streamdemo1 {public static void main(String[] args) {ListString list new ArrayList();list.add(张无忌);list.add(周芷若);list.add(赵敏);list.add(张三丰);list.add(张翠山);list.add(张强);//1.用传统方案找出姓张的人名字为3个字的存入到一个新集合中去。ListString newListnew ArrayList();for(String name:list){if(name.startsWith(张)name.length()3){//startsWith()判断字符串开头newList.add(name);}}System.out.println(newList);//[张无忌, 张三丰, 张翠山]//2.用Stream流方案找出姓张的人名字为3个字的存入到一个新集合中去。一个一个条件的过滤然后收集。ListString newList2list.stream().filter(name-name.startsWith(张)).filter(s-s.length()3).collect(Collectors.toList());//可以理解传送带一个一个放上去System.out.println(newList2);//[张无忌, 张三丰, 张翠山]} }3.获取Stream流 获取集合的Stream流 default Stream stream() :获取当前集合对象的Stram流。 获取数组的Stream流 public static Stream stream(T[] array):获取当前数据的Stream流。public static Stream of(T…valuese)获取当前接受数据的Stream流。 代码演示 package com.item.deom3Stream; import java.util.ArrayList; import java.util.*; import java.util.stream.Stream; public class Streamdemo2 {public static void main(String[] args) {//1.获取集合的Stream流CollectionString listnew ArrayList();StreamString s1list.stream();//2.获取Map集合的Stream流MapString,String mapnew HashMap();//map.stream();会报错不行。//获取键流StreamString s2map.keySet().stream();//获取值流StreamString s3map.values().stream();//获取键值对流StreamMap.EntryString, String s4map.entrySet().stream();//3.获取数组的Stream流String[] arr{张三,王五,叠山,李斯};StreamString s5Arrays.stream(arr);System.out.println(s5.count());//4StreamString s6Stream.of(arr);StreamString s7Stream.of(张三,王五,叠山,李斯);System.out.println(s7.count());//4System.out.println(s6.count());//4} } 4.中间方法 定义指的是调用完成后会返回新的Stream流可以继续使用支持链式编程 常用 filter(Predicate p)过滤流中的元素返回满足条件的元素limit(long maxSize)截取流中的元素返回截取后的新流skip(long n)跳过指定数量的元素返回剩余的元素distinct()去重返回去重后的新流map(Function f)映射返回一个新流通过指定的函数对元素进行转换sorted()排序返回一个新流通过比较器对元素进行排序concat(Stream a,Stream b)连接两个流返回一个新流 代码演示 package com.item.deom3Stream; import java.io.Serializable; import java.util.ArrayList; import java.util.List; import java.util.stream.Stream; public class Streamdemo3 {public static void main(String[] args) {ListString list new ArrayList();list.add(张无忌);list.add(周芷若);list.add(赵敏);list.add(张三丰);list.add(张翠山);list.add(张强);//1.过滤方法filterlist.stream().filter(name-name.startsWith(张)name.length()3).forEach(s-System.out.println(s));System.out.println();//2.排序方法sortedListDouble scores new ArrayList();scores.add(99.9);scores.add(66.6);scores.add(77.7);scores.add(55.5);scores.add(99.9);scores.add(99.9);scores.stream().sorted().forEach(s-System.out.println(s));//默认升序System.out.println();scores.stream().sorted((s1,s2)-Double.compare(s2,s1)).forEach(s-System.out.println(s));//降序System.out.println();scores.stream().sorted((s1,s2)-Double.compare(s2,s1)).limit(2).forEach(s-System.out.println(s));//只要前2名System.out.println();scores.stream().sorted((s1,s2)-Double.compare(s2,s1)).skip(2).forEach(s-System.out.println(s));//跳过前2名//3.去重方法distinctscores.stream().distinct().forEach(s-System.out.println(s));System.out.println();//4.映射方法map把流上原来的数据拿出来变成新的数据有放到流上去。scores.stream().map(s-加10分后(s10)).forEach(s-System.out.println(s));//5.合并方法concatStreamString s1 Stream.of(张无忌,周芷若);StreamInteger s2Stream.of(11,12);StreamObject concatStream.concat(s1,s2);} }5.常用终结方法 常用 void forEach(Consumer action):对此流运算后的元素执行遍历long count():返回此流中的元素数Optional max(Comparator? super T comparator):返回此流中的最大元素Optional min(Comparator? super T comparator):返回此流中的最小元素 6.收集Stream流 收集Stream流就是把Stream流操作后的结果转回到集合或者数组中去返回。 Stream流方便操作集合/数组的手段集合/数组才是开发中的目的。 收集Stream提供的常用终结方法 R collect(Collector collector)把流处理后结果收集到一个指定的集合中去。Object[] toArray() :把流处理后的结果收集到一个数组中去。 Collectors工具类提供了具体的收集方式 public static Collector toList():把元素收集到List集合中。public static Collector toSet():把元素收集到Set集合中。public static Collector toMap(Function keyMapper,Function valueMapper):把元素收集到Map集合中。 代码演示56 主类代码 package com.item.deom3Stream; import java.util.*; import java.util.function.Function; import java.util.stream.Collectors; import java.util.stream.Stream; public class Streamdemo4 {public static void main(String[] args) {ListTeacher teachers new ArrayList();teachers.add(new Teacher(小王, 18,3245.2));teachers.add(new Teacher(小李, 19,3345.3));teachers.add(new Teacher(小孙, 20,3609.4));teachers.add(new Teacher(小张, 18,2780.3));//终结方法一forEach方法teachers.stream().filter(t-t.getAge()18).forEach(System.out::println);System.out.println();//终结方法二count方法long count teachers.stream().filter(t-t.getAge()18).count();System.out.println(count);System.out.println();//终结方法三、max方法OptionalTeacher maxteachers.stream().max((t1,t2)-Double.compare(t1.getSalary(),t2.getSalary()));Teacher maxteachermax.get();//获取Optional对象中的数据System.out.println(maxteacher);//终结方法四、min方法OptionalTeacher minteachers.stream().min((t1,t2)-Double.compare(t1.getSalary(),t2.getSalary()));Teacher mintachermin.get();//获取Optional对象中的数据System.out.println(mintacher);System.out.println(-----------------);ListString list new ArrayList();list.add(张无忌);list.add(周芷若);list.add(赵敏);list.add(张三丰);list.add(张翠山);list.add(张强);//流只能收集一次//收集到集合或者数组中去StreamString s1list.stream().filter(name-name.startsWith(张));//收集到List集合中ListString list1s1.collect(Collectors.toList());System.out.println(list1);System.out.println();//收集到Set集合中/*SetString sets1.collect(Collectors.toSet());System.out.println(set);//这样会报错*/StreamString s2list.stream().filter(name-name.startsWith(张));SetString sets2.collect(Collectors.toSet());System.out.println(set);System.out.println();//收集到数组中StreamString s3list.stream().filter(name-name.startsWith(张));Object[] arrays3.toArray();System.out.println(Arrays.toString(array));System.out.println();//收集到Map集合StreamTeacher s4teachers.stream();//键是老师值是老师名称MapString,Double maps4.collect(Collectors.toMap(new FunctionTeacher,String() {Overridepublic String apply(Teacher teacher) {return teacher.getName();}}, new FunctionTeacher, Double() {Overridepublic Double apply(Teacher teacher) {return teacher.getSalary();}}));System.out.println(map);//优化//MapString,Double maps4.collect(Collectors.toMap(Teacher::getName, Teacher::getSalary));System.out.println(map);} }Teacher类代码 package com.item.deom3Stream; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor;Data NoArgsConstructor AllArgsConstructor public class Teacher implements ComparableTeacher{private String name;private int age;private double salary;Overridepublic String toString() {return Teacher{ name name \ , age age , salary salary }\n;}//解决方法1重写方法比较两个对象的大小Overridepublic int compareTo(Teacher o) {//按照年龄升序return this.getAge()-o.getAge();} } 7.方法中可变参数 定义就是一种特殊形参定义在方法、构造器的形参列表里格式是数据类型。。。参数名称 可变参数特点可以不传数据给它可以传一个或者同时传多个数据给它也可以传一个数组给它。 可变参数好处常常用来灵活的接受数据。 注意事项 1.可变参数在方法内就是一个数组。2.一个形参列表中可变参数只能有一个。3.可变参数必须放在形参列表的最后面。 8.Collections工具类 定义是一个用来操作集合的工具类。 Collections提供的常用静态方法 public static boolean addAll(Collection? super T,c,T…elements给集合批量添加元素。public static void shuffle(List? lsit)打乱List集合元素的顺序。public static void sort(List list)对List集合元素进行升序排序。public static void sort(List list,Comparator? super T c)对list集合中元素按照比较器对象指定的规则进行排序。 代码演示78 package com.item.deom3Stream; import java.util.Arrays; import java.util.stream.Stream; import java.util.*; public class Streamdemo5 {public static void main(String[] args) {sum();sum(10);sum(10,20,30,40);sum(new int[]{11,20,30,50});//优势接受参数很灵活可以替代数组传参。System.out.println();ListString listnew ArrayList();//1.Collections的方法批量加Collections.addAll(list, 张三丰, 张翠山, 张无忌, 赵敏, 周芷若);System.out.println(list);//2.Collections集合的方法打乱顺序Collections.shuffle(list);System.out.println(list);}public static void sum(int... a) {//内部怎么拿数据//可变参数对内实际上就是一个数组nums就是数组。System.out.println(a.length);System.out.println(Arrays.toString(a));System.out.println();} }
http://www.hkea.cn/news/14274181/

相关文章:

  • 做网站大概需要多少费用小程序源码怎么打开
  • 网站建设宝安织梦网站创建商品栏目
  • 企业品牌网站建设方案上海化工网站建设
  • 网站引流推广奢侈品电商网站首页设计
  • 资源网站优化排名优化邯郸住房城乡建设厅网站
  • ktv网站模板教务管理系统app
  • 网站快速收录平台韩国网站建设
  • 企业营销网站的建设wordpress网站维护教程
  • 动态电子商务网站建设报告最好看的2018中文在线观看
  • 高职学院网站建设方案简单做动画的网站
  • uc浏览器访问网站seo 优化
  • 北京市住房与建设厅官方网站货源网站开发
  • 大学科研项目做网站怎么做网站流量统计分析
  • 昆山做网站价格wordpress 修改搜索
  • 做服装招聘的网站做一个小型网站多少钱
  • 高端网站开发平台网站 二级分类
  • 盐城网站建站企业门户网站系统下载
  • 做图书馆网站如何写好一篇软文
  • 芜湖做网站asp.net做网站吗
  • 网站 手机案例怎么在网上做网站
  • dede织梦建站教程网站安全怎么做
  • 食品行业网站建设在线玩的游戏网站
  • 网页与网站设计实验报告用第三方做网站
  • 内江市建设教育培训官方网站做淘宝网站运营工作流程
  • wordpress 流量站东营网站建设方案范文
  • 建设好网站需要做推广杭州平面设计培训
  • 个人网站名称请湖南建设监理工程网站
  • 在柬埔寨做网站彩票推广继续教育网站怎么做不了作业
  • 南宁cms建站系统什么网站可以学做西餐
  • 网络公司做的网站个人商城网站备案