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

网站模板参考php网站开发接口开发

网站模板参考,php网站开发接口开发,温州推广团队,一起做英语作业网站1.Stream流的作用(流水线) 结合了Lambda表达式,简化集合、数组的操作; 2.Stream流的使用步骤 ①先得到一条Stream流(流水线),并将数据放上去; ②利用Stream流中的API进行各种操作…

1.Stream流的作用(流水线)

结合了Lambda表达式,简化集合、数组的操作

2.Stream流的使用步骤

①先得到一条Stream流(流水线),并将数据放上去;

②利用Stream流中的API进行各种操作;

eg:过滤    转换   【中间方法】:方法调用完毕后还可以调用其他方法;(使用次数较多)

     统计    打印   【终结方法】:方法调用完毕后不可以再调用其他方法(一般在最后使用)

③使用终结方法对流水线上的数据进行操作;

3.怎样执行2.①?

获取方式方法名说明
单列集合default Stream<E> stream()Collection中的默认方法
双列集合需先通过KeySet()orentrySet()转化成单列集合...
数组public static <T> Stream<T>stream(T[]array)Array工具类中的静态方法
一堆零散数据public static <T>Stream<T>of(T...values)Stream接口中的静态方法(数据类型尽量一致)

代码演示:(单列集合)

import java.util.ArrayList;
import java.util.Collections;
import java.util.stream.Stream;public class Listof {public static void main(String[] args) {ArrayList<String> list=new ArrayList<>();//创建单列集合Collections.addAll(list,"张三","李四","王五","赵六","思思","张小三","张小思");//批量添加//Stream<String> stream=list.stream();//单列集合获取Stream流//过滤出单列集合中名字以”张“开头且长度为三的名称并进行打印list.stream().filter(name->name.startsWith("张")).filter(name->name.length()==3).forEach(name->System.out.println(name));System.out.println("*********************************************");//获取单列集合中名字是两个字的人名并进行打印list.stream().filter(name->name.length()==2).forEach(name->System.out.println(name));}
}

双列集合:

import java.util.*;public class Listof {public static void main(String[] args) {//双列集合HashMap<Integer,String> hm=new HashMap<>();hm.put(1,"妲己");hm.put(2,"小乔");hm.put(3,"安其拉");hm.put(4,"王昭君");hm.put(5,"甄姬");Set<Integer> integers = hm.keySet();integers.stream().forEach(Key-> System.out.println(Key));System.out.println("***********************************");Set<Map.Entry<Integer, String>> entries = hm.entrySet();entries.stream().filter(name->name.getValue().length()==3).forEach(name-> System.out.println(name));}
}

数组,零散数据:

package Deom130;import java.util.Arrays;
import java.util.stream.Stream;public class Listof {public static void main(String[] args) {//数组int []array1={1,2,3,4,5};String []array2={"a","b","c","d","e"};Arrays.stream(array1).forEach(s-> System.out.println(s));System.out.println("****************************");Arrays.stream(array2).forEach(s-> System.out.println(s));System.out.println("****************************");//零散数据Stream.of(1,2,3,4,5).forEach(s-> System.out.println(s));System.out.println("****************************");Stream.of("a","b","c","d","e").forEach(s-> System.out.println(s));}
}

4.Stream流的中间方法(改变的只是流里面的数据,对原本集合中的数据不会有影响)

名称说明
Stream<T>filter(Predicate<?super T>predicate过滤
Stream<T>limit(long maxSize)

获取前几个元素

limit(3)就是获取前三个元素

Stream<T>skip(long n)跳过前几个元素
Stream<T>distinct()去掉重复元素
static<T>Stream<T>concat(Stream a,Stream b)合并两个流为一个流(两个流上的数据类型尽量保持一致)
Stream<R>map(Function<T,R> mapper)转换流中的数据类型

5.Stream流的终结方法

名称说明
void forEach(Consumer action)遍历
long count()统计
toArray()收集流中的数据放到数组中
collect(Collector)收集流中的数据放到集合中

6.案例分析

import java.util.*;
import java.util.stream.Collectors;public class Listof {public static void main(String[] args) {//定义一个集合,存储数据,过滤奇数。留下偶数,并存储到集合中ArrayList<Integer> list1=new ArrayList<>();Collections.addAll(list1,1,2,3,4,5,6,7,8,9,10);List<Integer> collect = list1.stream().filter(s -> s % 2 == 0).collect(Collectors.toList());System.out.println(collect);System.out.println("***********************************");ArrayList<String> list2=new ArrayList<>();Collections.addAll(list2,"张三,23","李四,24","王五,25");Map<String, String> collect1 = list2.stream().filter(s -> Integer.parseInt(s.split(",")[1]) > 24).collect(Collectors.toMap(s -> s.split(",")[0], s -> s.split(",")[1]));System.out.println(collect1);}
}

需求:

有两个集合,分别存储六个演员年龄和姓名,现需男演员只要名字为3个字的前两个人,女演员只要姓杨的并且不要第一个,再将得到的两个集合合并为一个集合并且封装成以一个Actor对象,最后将数据存到集合list中;

实现代码:

import java.util.*;
import java.util.stream.Collectors;
import java.util.stream.Stream;public class Listof {public static void main(String[] args) {ArrayList<String> list1=new ArrayList<>();Collections.addAll(list1,"蔡坤坤,24","比个耶,23","刘不甜,22","伍仟,24","谷嘉,30","肖梁梁,27");ArrayList<String> list2=new ArrayList<>();Collections.addAll(list2,"赵小影,35","杨颖,36","高圆圆,43","张天天,31","刘诗,35","杨小幂,33");Stream<String> boylimit = list1.stream().filter(s -> s.split(",")[0].length()==3).limit(2);Stream<String> girlskip = list2.stream().filter(s -> s.split(",")[0].startsWith("杨")).skip(1);List<Actor> collect = Stream.concat(boylimit, girlskip).map(s -> new Actor(s.split(",")[0], Integer.parseInt(s.split(",")[1]))).collect(Collectors.toList());System.out.println(collect);}
}

http://www.yayakq.cn/news/244015/

相关文章:

  • 怎么快速开发一个网站app是怎么开发的
  • 网站首页图片叫什么淘宝网免费素材图库
  • 深圳网站制作建站网易企业邮箱续费
  • 创建主题资源网站的学习_你觉得在主题资源建设方面有哪些收获?贵阳网站开发zu97
  • 网站外链多的危害在线代理网址
  • 网站建设CEO网页设计与制作课程在工作中的应用
  • 天津建设部网站保温怎么做彩票网站的代理
  • 公司建设网站申请wordpress 左侧导航
  • 第一网站ppt模板免费下载鹏牛网做网站怎么样
  • 团购网站APP怎么做在线制作logo免费生成器
  • 网站设计策划书3000字网站运营刚做时的工作内容
  • 门户网站网站建设谈谈你对seo概念的理解
  • 门户网站建设方案是什么意思山东华邦建设集团网站
  • 照片网站模板wordpress 获取自定义字段
  • 做网站合同封面网站建设集群化的必要
  • 网站开发 软件开发百度 门户网站
  • 网站建设的技术支持包括找一个网站做搜索引擎分析
  • 网站做cpa租空间做网站需要多少钱
  • 保定市网站制作公司wordpress胖子马
  • 重庆李家沱网站建设服装微商城网站建设
  • 佛山新网站建设渠道网站ui设计怎么做
  • 公司培训网站建设包商科技wordpress
  • 山东省住房和城乡城乡建设厅网站传媒公司主要经营范围
  • 甘肃城乡建设厅网站网站的颜色
  • 重庆网站空间费用高端网站建设企业
  • 淄博三合一网站开发wordpress 清楚jq
  • 榆树市住房和城乡建设局网站公司网站制作苏州
  • 嘉兴网站托管软件开发专业需要学什么
  • 网络运营推广经验长沙网站优化对策
  • 聊城wap网站建设如何在导航网站上做链接