Java 流式处理

Java 流式处理

package com.hp.test;

import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Comparator;
import java.util.IntSummaryStatistics;
import java.util.List;
import java.util.Random;
import java.util.stream.Collectors;
import java.util.stream.Stream;

public class StremTest {
	/*
	 * stream对象类似于迭代器,每个stream对象都是一次性的
	 */
public static void main(String[] args) {
    String[] ar= {"hello","world"};
    //Stream.of(); stream(); 将集合或数组转换为集合Stream
	Stream<String> asr = Stream.of(ar);
	//获取集合元素数量
    long len = asr.count();
    //map() 对Stream集合的元素进行操作
    //foreach(System.out::println);循环输出集合元素
	//asr.map(i ->i+"1").forEach(System.out::println);
	//filter();对集合里的的元素进行过滤
    //asr.filter(i->!i.equals("hello")).forEach(System.out::println);
    //parallel();  对集合stream进行并行处理
	//asr.parallel().filter(i->!i.equals("hello")).forEach(System.out::println);
	//获取Random
	//Random ran = new Random();
    //limit();对集合里的元素数量进行限制
    //sorted();对集合里的元素进行过滤
	//ran.ints().limit(10).sorted().forEach(System.out::println);
    //collect(Collectors.toList());将stream集合转换为集合(List,Set,Map)
	List<String> ls= Stream.of(ar).collect(Collectors.toList());
	List<Integer> ars= Arrays.asList(1,5,6,7,82,9);
	//将Stream集合转换为IntSummaryStatistics对象
	IntSummaryStatistics as = ars.stream().mapToInt((x)->x).summaryStatistics();
	//利用IntSummaryStatistics获取对象里元素的最大值
	System.out.println(as.getMax());
	//利用IntSummaryStatistics获取集合的平均数
	System.out.println(as.getAverage());
	//利用IntSummaryStatistics的最小值
	System.out.println(as.getMin());
	//利用IntSummaryStatistics的元素的总和
	System.out.println(as.getSum());
	//利用IntSummaryStatistics的元素数量和
	System.out.println(as.getCount());
	//Arrays.asList();将数组元素转换为列表元素
	List<String> lss=Arrays.asList("Hello","world","team");
	//distinct();对stream集合里的元素进行去重操作
	//collect(Collectors.joining("@"));将列表元素进行字符串拼接,并在每个字符串拼接之间加上@
	String ks = lss.stream().distinct().collect(Collectors.joining("@"));
	//输出stream集合列表拼接后的结果
	System.out.println(ks);
	
	
}
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值