Arrays.stream().boxed()的使用

一、Arrays.stream()的使用

使用:

1、获取需要转换的数组

2、使用Arrays.stream()将数组转换为流,且数组作为参数传递

3、返回流

例:将字符串转化为Stream,再转为List

public void test(){

    String ids="1,2,3,4,5,6,7";
    
    /**将字符串转成数组,ids为逗号分隔**/
    int[] ints = StrUtil.splitToInt(ids,",");
    
    /**将longs转化为stream,通过boxed()转化为Long类型的流,再使用collect(Collectors.toList())转化为List类型**/
    List<Integer> idParam= Arrays.stream(longs).boxed().collect(Collectors.toList());
    
    System.out.println(idParam);
}

 

二、boxed()的使用

将基本类型的stream转成了包装(boxed)类型的Stream,如将int类型的流转化为Integer类型的流。

@Override
public final Stream<Integer> boxed() {
    return mapToObj(Integer::valueOf);
}

 

  • IntStream是int类型的流。Stream<Integer>是Integer类型的流。
  • IntStream存的是int类型的stream,而Stream<Integer>是一个存了Integer的stream。
    boxed的作用就是将int类型的stream转成了Integer类型的Stream
List<Integer> numbers = Arrays.asList(1, 2, 3, 3, 4, 5);
IntStream intStream = numbers.stream().mapToInt(i -> i);  //转成IntStream
Stream<Integer> boxed = intStream.boxed();                //转成Stream<Integer>

 

posted @   风筝上的猫  阅读(529)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示