Java场景下如何将String[]数组转换为long[]数组?
实现方案
方案1:Java 8+ 流式写法(代码更简洁)
依赖JDK自带的Stream API实现转换,代码如下:
import java.util.Arrays; // 你已有的拆分逻辑 String[] numbersText = inputArray[31].split(SPLIT_CHAR); // 批量转换为long数组 long[] numbers = Arrays.stream(numbersText) .mapToLong(Long::parseLong) .toArray();
方案2:低版本Java兼容写法(适用Java 7及更早版本)
通过普通循环遍历逐个转换:
// 你已有的拆分逻辑 String[] numbersText = inputArray[31].split(SPLIT_CHAR); long[] numbers = new long[numbersText.length]; for (int i = 0; i < numbersText.length; i++) { // 可先调用trim()去除字符串首尾空白,避免空格导致解析失败 numbers[i] = Long.parseLong(numbersText[i].trim()); }
注意:如果拆分得到的字符串存在不符合long格式的内容,
Long.parseLong方法会抛出NumberFormatException,如果你的业务场景可能出现非法字符,建议增加try-catch异常捕获逻辑,或者提前做格式校验避免程序崩溃。
内容的提问来源于stack exchange,提问作者Dead pool
相关产品推荐
相关产品推荐

