java8 lambda 将二维数组转换成list集合

java8 lambda 将二维数组转换成list集合将二维数组int[][]转换成一个嵌套的List<List>的形式代码如下publicstaticList<List<Integer>>generate(intnumRows){int[][]ints=newint[numRows][numRows];for(inti=0;i<numRows;i++){for(intj=0;j<=i;j++){if

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

将二维数组int[][]转换成一个嵌套的List<List<Integer>> 的形式

代码如下

public static List<List<Integer>> generate(int numRows) { 
   
    int[][] ints = new int[numRows][numRows];
    for (int i = 0; i < numRows; i++) { 
   
      for (int j = 0; j <= i; j++) { 
   
        if (j == 0 || j == i) { 
   
          ints[i][j] = 1;
        } else { 
   
          ints[i][j] = ints[i - 1][j - 1] + ints[i - 1][j];
        }
      }
    }
    //todo
  
  }}

最后需要 List<List> 这种结果集,采用lambda来实现

实现一

List<List<Integer>> collect = Arrays.stream(ints).map(l -> { 
   
          return Arrays.stream(l)
              .boxed().collect(Collectors.toList());
        }).collect(Collectors.toList());

实现二

List<List<int[]>> collect2 = Arrays.stream(ints).map(Arrays::asList)
        .collect(Collectors.toList());

会发现 实现二返回的并不是我们需要的形式,实现一才是我们需要的,原因是需要进行一次装箱即可,采用实现一即可

如果需要合并成一个List的形式需要用到 flatMap拆分流

 List<Integer> collect = Arrays.stream(ints).flatMap(l -> { 
   
      return Arrays.stream(l).boxed();
    }).collect(Collectors.toList());
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/172295.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • httpclient4 post 以json方式传参数

    httpclient4 post 以json方式传参数httpclient4post以json方式传参数

  • SpringBootTest使用MockMvc测试Controller

    SpringBootTest使用MockMvc测试Controllerimportstaticorg.springframework.test.web.servlet.request.MockMvcRequestBuilders.*;importstaticorg.springframework.test.web.servlet.result.MockMvcResultMatchers.*;@RunWith(SpringRunner.class)@…

  • PhpStorm 2021.1激活码 有效期2021 3月破解方法

    PhpStorm 2021.1激活码 有效期2021 3月破解方法,https://javaforall.cn/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

  • 2021十大国际黄金交易APP平台排名一览

    2021十大国际黄金交易APP平台排名一览国际黄金交易作为一个国际投资产品在投资市场中成功接棒。作为当下热门的投资,经常有投资者询问小编国际黄金交易盈利技巧在于哪里,其实国际黄金交易比较简单,找到一个正规合适的平台就是盈利的关键。如今已是移动互联网时代,各类APP层出不穷,也有不少浑水摸鱼之辈。国际黄金市场波动大,需要一个稳定的平台来承受变化莫测的黄金市场,才方便投资者做出相对应的操作,那么国际黄金交易APP怎么选呢?下面让小编给大家介绍“2021十大国际黄金交易APP平台排名一览”,仅供大家参考。1、金荣中国APP金荣中国属金银业贸易场A

  • 校准不好TOF相机就废了?

    校准不好TOF相机就废了?校准不好TOF相机就废了?原文:(143条消息)校准不好TOF相机就废了?_深度视觉小司机的博客-CSDN博客五种校准一、镜头校准二、温度校准三、非线性校准四、共偏校准五、逐像素校准六、结语校准不好TOF相机就废了?目前,手机相机的进化方向是多摄中加入3D技术,而3D技术的一个很重要的路线是TOF,各大手机厂商都有对应的机型。关于TOF相机的原理,之前已经有很多科普文章了,今天我们就来聊一聊对TOF相机很重要的校准标定。五种校准TOF相机可以产生距离信息即深度信息,而深度.

  • Microsoft Visio Pro 2016产品密钥激活成功教程完整免费下载「建议收藏」

    Microsoft Visio Pro 2016产品密钥激活成功教程完整免费下载「建议收藏」https://blog.csdn.net/jingxiansheng/article/details/75805699

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号