Java String数组转Long数组

在Java中,有时我们需要将一个String数组转换为一个Long数组。这种转换可以在处理字符串时非常有用,特别是当需要将字符串中的数字转换为Long类型时。本文将介绍如何使用Java的基本方法将String数组转换为Long数组,并提供相应的代码示例。

1. 使用循环将String数组转换为Long数组

一种常见的方法是使用循环遍历String数组的每个元素,并将每个元素转换为Long类型,然后将其存储在Long数组中。下面是一个示例代码:

public class StringToLongArrayExample {

    public static void main(String[] args) {
        String[] stringArray = {"123", "456", "789"};

        Long[] longArray = new Long[stringArray.length];

        for (int i = 0; i < stringArray.length; i++) {
            longArray[i] = Long.parseLong(stringArray[i]);
        }

        // 打印Long数组
        for (Long num : longArray) {
            System.out.println(num);
        }
    }
}

在上面的代码中,我们首先创建了一个String数组stringArray,其中包含了一些数字字符串。然后,我们创建了一个相同长度的Long数组longArray,用于存储转换后的Long类型数据。接下来,我们使用Long.parseLong()方法将每个String元素转换为Long类型,并将其存储在Long数组中。最后,我们遍历Long数组并打印每个元素。

输出结果如下:

123
456
789

2. 使用Java 8的Stream将String数组转换为Long数组

另一种更简洁的方法是使用Java 8中的Stream API。通过将String数组转换为Stream,我们可以使用map()方法将每个String元素转换为Long类型,并将其收集到一个Long数组中。下面是一个使用Java 8 Stream的示例代码:

import java.util.Arrays;

public class StringToLongArrayExample {

    public static void main(String[] args) {
        String[] stringArray = {"123", "456", "789"};

        Long[] longArray = Arrays.stream(stringArray)
                .map(Long::parseLong)
                .toArray(Long[]::new);

        // 打印Long数组
        for (Long num : longArray) {
            System.out.println(num);
        }
    }
}

在上面的代码中,我们使用Arrays.stream()方法将String数组转换为一个Stream对象。然后,我们使用map()方法将每个String元素转换为Long类型。Long::parseLong是一个方法引用,它将每个String参数传递给Long.parseLong方法。最后,我们使用toArray()方法将Stream中的元素收集到一个Long数组中。

输出结果与上面的示例代码相同。

总结

本文介绍了两种将String数组转换为Long数组的方法。第一种方法是使用循环遍历String数组的每个元素,并将其转换为Long类型的方法。第二种方法是使用Java 8的Stream API,通过将String数组转换为Stream对象,并使用map()方法将每个String元素转换为Long类型,然后使用toArray()方法将其收集到一个Long数组中。

以上就是将String数组转换为Long数组的两种常见方法。根据实际需求选择适合自己的方法即可。希望本文对你有所帮助!


参考文献:

  • [Java String to Long Array](