【发布时间】:2017-12-05 17:00:19
【问题描述】:
我得到的是这条指令,它给了我一个 String[] 对象:
string.trim().split(" ");
使用Arrays.asList(string.trim().split(" "))的内容类似于:[4, 3, 2, 5, -10, 23, 30, 40, -3, 30]
所以它的内容是由数字组成的。我想要的是将String[] 对象转换为int[] 对象。如果不将每个字符串都解析为 int,我该如何做到这一点?
【问题讨论】:
-
"如果不将每个字符串都解析为 int,我该怎么做?"你不能。在某些时候,它需要被解析(显式或隐式)。如果你想简化你的代码,你可以使用
int[] intArr = Stream.of(strArray).mapToInt(Integer::parseInt).toArray(); -
你可以做的是创建一个函数来手动将 String 转换为 int 但这会更糟
-
我模棱两可抱歉。我的意思是不要直接使用 for 循环
-
你在求魔法。无论您是编写一个还是隐含在流处理中,都需要一个循环。
标签: java arrays string casting