Java - String 배열 초기화 방법

Java에서 문자열 배열을 초기화 하는 방법을 소개합니다.

1. 배열 선언 및 Index로 값 할당

new String[size]와 같이 문자열 배열을 선언할 수 있으며 arr[index] = value로 값을 할당할 수 있습니다.

public class Example {

    public static void main(String[] args) {

        String[] arr = new String[4];
        arr[0] = "apple";
        arr[1] = "kiwi";
        arr[2] = "grape";
        arr[3] = "banana";

        for (String str : arr) {
            System.out.println(str);
        }
    }
}

Output:

apple
kiwi
grape
banana

2. 배열 선언과 동시에 값 할당

String[] arr = {...} 또는 String[] arr = new String[] {...} 형태로 배열 선언과 동시에 초기 값을 설정할 수 있습니다.

public class Example1 {

    public static void main(String[] args) {

        String[] arr = {"apple", "kiwi", "grape", "banana"};
        for (String str : arr) {
            System.out.println(str);
        }

        System.out.println();

        String[] arr2 = new String[] {"apple", "kiwi", "grape", "banana"};
        for (String str : arr2) {
            System.out.println(str);
        }
    }
}

Output:

apple
kiwi
grape
banana

apple
kiwi
grape
banana

3. Arrays.fill()로 배열 채우기

문자열 배열을 선언하면 기본적으로 null로 채워지는데, Arrays.fill()로 배열에 특정 값으로 채울 수 있습니다.

예를 들어, Arrays.fill(arr, "A")는 arr 배열의 값들을 모두 A로 설정합니다.

Arrays.fill(arr, start, end, "A")는 arr 배열에서 start 인덱스부터 end 인덱스까지만 값을 A로 설정합니다. 주의할 점은 설정 범위에서 start 인덱스는 포함되며, end 인덱스는 포함되지 않습니다.(즉, start 인덱스부터 end 인덱스의 바로 전 인덱스까지만 값을 채움)

import java.util.Arrays;

public class Example2 {

    public static void main(String[] args) {

        String[] arr = new String[4];

        Arrays.fill(arr, "A");
        for (String str : arr) {
            System.out.println(str);
        }

        System.out.println();

        String[] arr2 = new String[4];
        Arrays.fill(arr2, 1, 3, "B");
        for (String str : arr2) {
            System.out.println(str);
        }

    }
}

Output:

A
A
A
A

null
B
B
null

4. Arrays.setAll()로 배열 채우기

Arrays.setAll(arr, lambda)는 인자로 전달된 배열 arr에 대해서 lambda를 이용하여 초기값을 설정합니다.

아래 예제에서 람다식은 i -> "A" + i인데, 배열의 index가 i로 전달되고, 리턴 값이 각각의 인덱스의 요소 값으로 설정됩니다.

import java.util.Arrays;

public class Example3 {

    public static void main(String[] args) {

        String[] arr = new String[4];

        Arrays.setAll(arr, i -> "A" + i);
        for (String str : arr) {
            System.out.println(str);
        }
    }
}

Output:

A0
A1
A2
A3
Loading script...
codechachaCopyright ©2019 codechacha