首页 > 编程语言 >java - stream流

java - stream流

时间:2023-05-31 14:11:17浏览次数:35  
标签:java stream Stream integerList System forEach out

一、创建stream流

1、通过集合创建,这里以List为例

        List<Integer> integerList = new ArrayList<>();
        integerList.add(1);
        integerList.add(2);
        integerList.add(3);
        Stream<Integer> stream1 = integerList.stream();

 

2、Array数组创建

        int[] array = {1,2,3};
        IntStream stream2 = Arrays.stream(array);

 

3、通过stream流的of()方法

        Stream<Integer> stream3 = Stream.of(1,2,3);
        stream3.forEach(System.out::println);

 

4、通过stream流的iterate()方法(无限流,需要limit截断)

        Stream<Integer> stream4 = Stream.iterate(1, n -> n + 1).limit(3);
        stream4.forEach(System.out::println);

 

5、通过stream流的generate()方法(无限流,需要limit截断)

        Stream<Double> stream5 = Stream.generate(Math::random).limit(3);
        stream5.forEach(System.out::println);

 

6、文件创建

        try {
            Stream<String> stream6 = Files.lines(Paths.get("data.txt"), Charset.defaultCharset());
            stream6.forEach(System.out::println);
        } catch (IOException e) {
            e.printStackTrace();
        }

 

二、中间操作

三、终端操作

四、collect详情

五、并行stream

标签:java,stream,Stream,integerList,System,forEach,out
From: https://www.cnblogs.com/codename-h/p/17445945.html

相关文章

  • Java大文件分片上传/多线程上传功能
    ​ 我们平时经常做的是上传文件,上传文件夹与上传文件类似,但也有一些不同之处,这次做了上传文件夹就记录下以备后用。这次项目的需求:支持大文件的上传和续传,要求续传支持所有浏览器,包括ie6,ie7,ie8,ie9,Chrome,Firefox,360安全浏览器,并且刷新浏览器后仍然能够续传,重启浏览器(关闭......
  • java api 设置kettle 日志到数据库
    设置到数据库transMeta.addDatabase(getDatabaseMeta(config));TransLogTableorigTransLogTable=transMeta.getTransLogTable();origTransLogTable.setConnectionName(config.getName());origTransLogTable.setTableName("r_log_trans&......
  • Java的volatile
    介绍volatilevolatile关键字可以说是Java虚拟机提供的最轻量级的同步机制,但是它并不容易被正确、完整地理解,以至于许多程序员都习惯去避免使用它,遇到需要处理多线程数据竞争问题的时候一律使用synchronized来进行同步。了解volatile变量的语义对理解多线程操作的其他特性......
  • Java的volatile
    介绍volatilevolatile关键字可以说是Java虚拟机提供的最轻量级的同步机制,但是它并不容易被正确、完整地理解,以至于许多程序员都习惯去避免使用它,遇到需要处理多线程数据竞争问题的时候一律使用synchronized来进行同步。了解volatile变量的语义对理解多线程操作的其他特性......
  • 序列化Java对象重命名字段,@JSONField、@JsonProperty、@SerializedName
    @JSONField主要用于返回出参转换这个注解分别可以注解在实体类的属性、setter和getter方法上publicclassTest{/*注解在属性上的时候可以设置一些序列化、格式化的属性@JSONField(serialize=false)---->序列化的时候忽略这个属性@JSO......
  • java9&10&11
    java9语法改进:接口的私有方法Java8中规定接口中的方法除了抽象方法之外,还可以定义静态方法和默认方法。一定程度上,扩展了接口的功能,此时的接口更像是一个抽象类。在Java9中,接口更加的灵活和强大,连方法的权限修饰符都可以声明为private的了,此时方法将不会称为你对外暴露API的......
  • 用Java开发HTTP代理服务器
    HTTP代理服务器是一种网络应用,它充当位于客户端和目标服务器之间的中间节点,将客户端发出的HTTP请求转发给目标服务器,并将目标服务器返回的HTTP响应内容回传给客户端。通过使用代理服务器,客户端可以避免直接访问目标服务器,从而更加安全地访问互联网资源。以下是使用Java开发HTTP......
  • java springboot 项目中静态资源无法访问的问题
    默认resource/static目录下的静态html文件无法访问,需要配置。您可以在SpringBoot的配置类中添加以下内容来手动配置静态资源目录:@ConfigurationpublicclassWebMvcConfigimplementsWebMvcConfigurer{@OverridepublicvoidaddResourceHandlers(ResourceHan......
  • java简单实现布隆过滤器
    为了方便理解布隆过滤器,java简单实现了下,特点:仅用做一次运算就可以判断存在不存在,但是只能精确的判断值不存在,不能精确的判断值存在publicclassBlTest{privatefinalintf=1024;//负载因子,值越大判断的越精准,但是所占的空间也越大int[]bArray;BlTest(){......
  • Java大文件分片上传/多线程上传解决方案
    ​ javaweb上传文件上传文件的jsp中的部分上传文件同样可以使用form表单向后端发请求,也可以使用ajax向后端发请求    1.通过form表单向后端发送请求         <formid="postForm"action="${pageContext.request.contextPath}/UploadServlet"method="post"e......