【问题标题】:Simpliest way to convert array of Integer to array of String in Java 8 [duplicate]在Java 8中将整数数组转换为字符串数组的最简单方法[重复]
【发布时间】:2016-11-06 15:31:51
【问题描述】:

我想转换一个Integer[],但toArray() 给了我Object[]。如何将其转换为String[]

Stream.of(ids).map(String::valueOf).toArray();

【问题讨论】:

  • int[] 还是Integer[]
  • @ElliottFrisch 整数[]
  • 不是另一个问题的真正副本。这涉及到 Integer[] 数组,这是一种特殊情况。

标签: java java-8


【解决方案1】:
String[] array = Stream.of(ids).map(String::valueOf).toArray(String[]::new);

【讨论】:

  • 我很惊讶,这是方法参考吗?新关键字可以当方法吗?
  • @richersoon 是对构造函数的引用
  • 方法引用可用于构造函数和方法
  • 如果你有一个现有的数组,建议使用Arrays.stream。这将始终适用于 int[]long[]double[](您只需使用 mapToObj 而不是 map),而 Stream.of 仅适用于装箱值,它的预期用例是可变参数调用,如 Stream.of(a, b, c)...
【解决方案2】:
String[] a= Arrays.toString(array).split("[\\[\\]]")[1].split(", "); 

我认为这应该可行

【讨论】:

    猜你喜欢
    • 2011-04-13
    • 2012-09-16
    • 2020-07-17
    • 2017-12-13
    • 1970-01-01
    • 2022-11-28
    • 2017-05-22
    • 2011-10-03
    • 2019-11-08
    相关资源
    最近更新 更多