HOWTO · Java

Java에서 배열 선언

이 기사에서는 Java에서 배열을 선언하는 방법을 소개합니다.

Java에서 배열 선언

다음은 Java 언어로 1D 배열을 선언하는 몇 가지 방법입니다. 자세한 설명은 주어진 코드 다음에 제공됩니다.

import java.util.stream.IntStream;

public class DeclareAnArray {
  public static void main(String[] args) {
    int[] intArr1 = new int[3];
    int[] intArr2 = {3, 4, 5};
    int[] intArr3 = new int[] {3, 4, 5};
    int intArr4[] = IntStream.range(0, 10).toArray();
    int[] intArr5 = IntStream.of(2, 5, 3, 8, 1, 9, 7).toArray();
    int[][] intArr6 = new int[5][2];
    int intArr7[][] = new int[5][2];
    int[] intArr8[] = new int[5][2];
    int[][] intArr9 = {{1, 2}, {1, 2}, {1, 2}, {1, 2}, {1, 2}};
  }
}

설명은 코드의 명령문 순서대로 순차적으로 제공됩니다.

int[] intArr1 = new int[3];는 자바 언어로 1 차원 배열을 선언하는 가장 간단한 방법입니다. 먼저,int가 데이터 유형이므로 배열을 만들고자하는 데이터 유형을 작성합니다. 이제 데이터 유형 이름 뒤에 대괄호[]를 추가합니다. 이는 크기가 정의되지 않은 정수 배열을 선언했음을 의미합니다. 데이터 유형 이름 뒤에 ‘intArr1’로 변수 이름을 지정합니다. 오른쪽으로 이동하여=연산자 뒤에new 키워드를 넣습니다. 키워드new 상태는 객체를 인스턴스화하고 힙 영역에 메모리를 할당합니다. 처음에 주어진 데이터 유형의 생성자 호출을 진행합니다. 배열이 선언되기 때문에 생성자는 대괄호로 묶인 배열 크기를 사용합니다. =연산자는 생성 된 객체를 참조 변수에 할당합니다. 따라서3 크기의 정수 배열은intArr1 변수와 함께 선언됩니다.
int[] intArr2 = {3, 4, 5};는 한 곳에서 값을 선언하고 인스턴스화하는 또 다른 방법입니다. 이 경우=연산자의 왼쪽에 데이터 유형과 변수 이름을 지정합니다. 오른쪽에는 중괄호{}로 값을 직접 제공하고 있습니다. 이 경우 배열의 크기는 선언 된 값의 수에 따라 내부적으로 평가됩니다. 따라서 인덱스0,1,2에 각각3,4, 5 값을 갖는3 크기의 정수 배열이 생성됩니다. 인스턴스화하는 동안 배열에 데이터를 제공하지 않으면 배열이 기본값으로 초기화됩니다.

int[] intArr3 = new int[]{3, 4, 5};는 모든면에서 두 번째 것과 비슷하지만 상당히 길다. 여기서 배열의 선언은 첫 번째 방법과 동일합니다. 유일한 차이점은 ‘{}‘중괄호로 값을 정의하는 동안 크기가 암시 적으로 계산되므로 명시 적으로 크기를 지정하지 않는다는 것입니다. 따라서 크기가 ‘3’인 정수 배열과 초기 값도 초기화됩니다.

다음 메소드는int intArr4[] = IntStream.range(0, 10).toArray();입니다. 이러한 방식으로Java 8과 그 기능을 사용하여 원하는 유형의 배열을 만들고 초기화합니다. 선언의 프로토 타입은 왼쪽과 다릅니다. 변수 이름과 함께 대괄호가있는 배열을 선언하는 또 다른 방법입니다. 따라서intArr4[]는 유효한 이름입니다. 계속해서IntStreamjava.util.Stream패키지에 제공된 인터페이스입니다. range메소드는IntStream인터페이스의 정적 팩토리 메소드이며 정수 값의IntStream을 리턴합니다. 배열의inclusive하한 및exclusive상한을 정의하는 매개 변수로 두 개의 값을 사용합니다. 마지막으로 생성 된 정수 스트림은toArray함수를 사용하여 배열로 변환되며 이것은 터미널 연산자입니다.

int [] intArr5 = IntStream.of(2, 5, 3, 8, 1, 9, 7).toArray();는 배열을 선언하는 또 다른 방법을 나타냅니다. 그리고 이것은 데이터 유형과 대괄호 사이에 공백을 두는 것이 유효하다는 것을 의미합니다. Java 8에서는of()함수를 사용하여 정수 값의 스트림을 정의 할 수 있습니다. 지정된 값은 정수 Stream에 순차적으로 저장됩니다. 이 스트림은toArray 함수를 사용하여 배열로 수집됩니다.

Java에서 2D 배열 선언

2 차원 배열은 행과 열을 하나의 단위로 결합한 것입니다. 2D 배열의 선언에는 행과 열의 정의가 순차적으로 포함됩니다. 첫 번째 값은 행 수를 정의하고 두 번째 값은 열 수를 정의합니다.

int intArr7[][] = new int[5][2];int[] intArr8[] = new int[5][2];는 크기가 5 x 2 인 배열의 유효한 선언입니다. 여기서 5는 행 수이고 2는 열 수입니다.

int[][] intArr9={ {1,2}, {1,2}, {1,2}, {1,2}, {1,2} };은 2D 배열을 정의하는 방법입니다. 우리는 명시 적으로 제공하지 않습니다. 크기는 중괄호 안의 매개 변수 수에 의해 내부적으로 계산됩니다. 그리고 중괄호의 중첩은 값이 row1에 삽입되고 앞에 쉼표로 구분 된 값으로 진행된다는 것을 말합니다.