前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java 数组与ArrayList的互转

Java 数组与ArrayList的互转

作者头像
小锋学长生活大爆炸
发布2021-01-13 10:05:23
9380
发布2021-01-13 10:05:23
举报
文章被收录于专栏:小锋学长生活大爆炸

数组 转 List

数组转其他,都要借助Arrays工具类:

  • 如果是引用类型数组,则可以直接Arrays.asList
  • 如果是基本类型数组,则要转为Arrays.stream
引用类型数组 Integer[] 转 List
代码语言:javascript
复制
Integer[] array = new Integer[]{1,2,3};
List<Integer> list = Arrays.asList(array );
基本类型数组 int[] 转 List
  1. 使用Arrays.streamint[]转换成IntStream
  2. 使用IntStream中的boxed()装箱。将IntStream转换成Stream<Integer>
  3. 使用Streamcollect(),将Stream<T>转换成List<T>,因此正是List<Integer>
代码语言:javascript
复制
int[] array = new int[]{1,2,3};
// Arrays.stream(arr) 可以替换成IntStream.of(arr)
List<Integer> list = Arrays.stream(array).boxed().collect(Collectors.toList());
基本类型数组 int[] 转 引用类型数组 Integer[]
代码语言:javascript
复制
int[] array = new int[]{1,2,3};
// 使用Stream的toArray,传入IntFunction<A[]> generator
// 不然默认是Object[]
Integer[] integer = Arrays.stream(array).boxed().toArray(Integer[]::new);
引用类型数组 Integer[] 转 基本类型数组 int[]
代码语言:javascript
复制
Integer[] integer = new Integer[]{1,2,3};
int[] array = Arrays.stream(integer).mapToInt(Integer::intValue).toArray();

List 转 数组

List 转 引用类型数组Integer[]
代码语言:javascript
复制
List<Integer> list = new ArrayList<>();
Integer[] integers = list.toArray(new Integer[0]);
List 转 基本类型数组 int[]
代码语言:javascript
复制
List<Integer> list = new ArrayList<>();
int[] array = list.stream().mapToInt(Integer::intValue).toArray();
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/01/09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 数组 转 List
    • 引用类型数组 Integer[] 转 List
      • 基本类型数组 int[] 转 List
        • 基本类型数组 int[] 转 引用类型数组 Integer[]
          • 引用类型数组 Integer[] 转 基本类型数组 int[]
          • List 转 数组
            • List 转 引用类型数组Integer[]
              • List 转 基本类型数组 int[]
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档