(挖坑)ACM里常用的流(Stream)操作——Java 8大法好

现在Java 8已经是各大oj的主流配置了吧,对stream的操作是我在打题时吃的最爽的新版糖。然而网上的Java题解本来就少,用stream来解题的….我是一个没看到。stream能找最大值最小值,还能排序,打起来也很爽。关于stream的性能可以看网上的各种测试,似乎跟环境有关系…有空多拿几个oj测一测。于是先挖个坑在这,慢慢填。

一、把数组转成流

用到java.util.Arrays包里的方法:

Arrays.stream(数组名)

简单易用,轻松搞定。

二、求最大最小值的操作

Arrays.stream(数组名).max()

stream自带求最大最小值的方法,max()和min(),可以方便的直接返回最值,然而这时候返回的仍然是流而不是基本数据类型,需要转换,也有自带方法能方便的完成(以int为例):

int max = Arrays.stream(数组名).max().getAsInt();
int min = Arrays.stream(数组名).min().getAsInt();

三、求和
也是方便的一行代码搞定,数组求和这个功能简直是千呼万唤始出来啊:

int sum = Arrays.stream(数组名).sum();

sum()方法直接返回的就是int值。

四、去重

Arrays.stream(数组名).distinct().toArray();
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值