Java - String 배열을 int 배열로 변환

숫자로 된 문자열 배열을 int 배열로 변환하는 방법을 소개합니다.

1. Integer.parseInt()로 String 배열을 int 배열로 변환

Integer.parseInt(string)은 문자열로 전달된 string을 int로 변환합니다.

아래와 같이 for문을 사용하여 문자열 배열을 int 배열로 변환할 수 있습니다.

public class Example {

    public static void main(String[] args) {

        String[] arr = new String[] {"10", "15", "30", "55"};

        int[] newArr = new int[arr.length];
        for (int i = 0; i < arr.length; i++) {
            newArr[i] = Integer.parseInt(arr[i]);
        }

        // output
        for (int i = 0; i < newArr.length; i++) {
            System.out.println("newArr[" + i + "] = " + newArr[i]);
        }
    }
}

Output:

newArr[0] = 10
newArr[1] = 15
newArr[2] = 30
newArr[3] = 55

2. Stream으로 String 배열을 Integer 배열로 변환

아래와 같이 배열을 Stream으로 만들고, Stream의 mapToInt()로 문자열을 Integer로 변환할 수 있습니다.

아래 예제는 String 배열을 Integer 배열로 변환합니다.

import java.util.Arrays;
import java.util.stream.Stream;

public class Example1 {

    public static void main(String[] args) {

        String[] arr = new String[] {"10", "15", "30", "55"};

        Integer[] newArr = Stream.of(arr).mapToInt(Integer::parseInt).boxed().toArray(Integer[]::new);

        // output
        System.out.println(Arrays.asList(newArr));
    }
}

Output:

[10, 15, 30, 55]

3. Stream으로 String 배열을 int 배열로 변환

Integer 배열이 아닌, int 배열로 변환하려면 아래와 같이 구현하면 됩니다. 위와 비슷하지만 int 배열로 리턴됩니다.

import java.util.stream.Stream;

public class Example2 {

    public static void main(String[] args) {

        String[] arr = new String[] {"10", "15", "30", "55"};

        int[] newArr = Stream.of(arr).mapToInt(Integer::parseInt).toArray();

        // output
        for (int i = 0; i < newArr.length; i++) {
            System.out.println("newArr[" + i + "] = " + newArr[i]);
        }
    }
}

Output:

newArr[0] = 10
newArr[1] = 15
newArr[2] = 30
newArr[3] = 55
Loading script...
codechachaCopyright ©2019 codechacha