English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Java 기본 튜토리얼

Java 흐름 제어

Java 배열

Java 객체지향(I)

Java 객체지향(II)

Java 객체지향(III)

Java 예외 처리

Java 목록(List)

Java Queue(큐)

Java Map 집합

Java Set 집합

Java 입력출력(I/O)

Java Reader/Writer

Java 다른 주제

Java 배열 (Arrays)

이 튜토리얼에서는 Java에서 배열을 사용하는 방법을 배웁니다. 예제를 통해 배열의 선언, 초기화 및 요소 접근을 배웁니다.

 배열은 유사한 타입 데이터의 집합입니다. 단일 타입의 데이터(값)를 저장하는 컨테이너입니다. 예를 들어, 다음과 같은 배열을 생성할 수 있습니다.100개의 int형 값.

Java에서 배열은 기본 구조체로, 많은 일반 값들을 저장하고 접근할 수 있게 합니다.

배열을 어떻게 선언하나요?

Java에서는 이렇게 배열을 선언하는 방법입니다.

dataType[] arrayName;

예제를 들어 보겠습니다

double[] data;

 여기서, data는 double 타입의 값을 저장할 수 있는 배열입니다.

하지만, 몇 개의 요소를 저장할 수 있을까요?

 좋은 질문입니다! 우리는 배열에 메모리를 할당해야 합니다. 메모리는 배열이 저장할 수 있는 요소 수를 정의합니다。

data = new Double[10];

 여기서, 배열의 크기는10这意味着它可以 contain10개의 요소(10개의 double 타입 값)。배열의 크기는 배열의 길이라고도 합니다。

주의:배열의 길이를 정의한 후에는 프로그램에서 변경할 수 없습니다。

다른 예제를 들어 보겠습니다:

int[] age;
age = new int[5];

이 age는 배열입니다. 그것은5개의 int 타입 값。

 Java에서, 우리는 한 개의 문장에서 배열의 메모리를 선언하고 할당할 수 있습니다. 예를 들어,

int[] age = new int[5];

Java 배열 인덱스

 Java에서 배열의 각 요소는 하나의 숫자와 연결되어 있습니다. 이 숫자는 배열 인덱스라고 합니다. 이 인덱스를 사용하여 배열의 요소에 접근할 수 있습니다. 예를 들어,

int[] age = new int[5];
Java 배열 인덱스

여기서, 우리는5의 배열. 그림에서 우리는 각 요소가 하나의 숫자(배열 인덱스)로 구성되었다고 볼 수 있습니다. 배열 인덱스는 항상 0에서 시작됩니다。

지금, 우리는 인덱스 번호를 사용하여 배열의 요소에 접근할 수 있습니다. 예를 들어, 배열의 첫 번째 요소에 접근하려면 age[0]를 사용할 수 있습니다. 두 번째 요소는 age[1]에 접근합니다. 이어서 계속됩니다。

주의:배열의 길이가 n이면, 배열의 첫 번째 요소는 arrayName[0],마지막 요소는 arrayName[n-1]。

만약 우리가 배열에 어떤 값을 저장하지 않았다면, 배열은 단독으로 몇 가지 디폴트 값을 저장합니다(int 타입은 0, boolean 타입은 false)。예를 들어,

class ArrayExample {
    public static void main(String[] args) {
    
        //길이가5의 배열 
        int[] age = new int[5];
     
        //인덱스 번호를 사용하여 배열의 각 요소에 접근
        System.out.println(age[0]);
        System.out.println(age[1]);
        System.out.println(age[2]);
        System.out.println(age[3]);
        System.out.println(age[4]);
    };
};

출력

0
0
0
0
0

 위의 예제에서 우리는 age라는 배열을 생성했습니다. 그러나, 우리는 배열에 값을 할당하지 않았습니다. 따라서, 우리가 배열의 각 요소에 접근할 때, 디폴트 값이 스크린에 출력됩니다.

여기서, 우리는 배열의 요소를 각각 접근합니다. 반복을 사용하는 더 나은 방법이 있습니다(보통for 루프에)배열 요소에 접근 예를 들어,

class ArrayExample {
    public static void main(String[] args) {
        //길이가5의 배열
        int[] age = new int[5];
        //for 루프를 사용하여 요소에 접근
        for (int i = 0; i < 5; ++i) {
            System.out.println(age[i]);
        };
    };
};

출력

0
0
0
0
0

Java에서 배열을 초기화하는 방법은 무엇인가요?

 Java에서는 선언 중에 배열을 초기화할 수도 있고, 필요에 따라 프로그램에서 초기화할 수 있습니다.

선언 중에 배열 초기화

 언제든지 필요에 따라 선언 중에 배열을 초기화할 수 있습니다.

int[] age = {12, 4, 5, 2, 5};

이 문장은 이름을 가진 배열 'age'를 생성하고 대括호 안에 제공된 값으로 초기화합니다.

 배열의 길이는 대括호 안에 쉼표로 구분된 값의 개수에 의해 결정됩니다. 우리의 예제에서는 age의 길이는5。

Java 배열 초기화

이 배열의 요소를 출력하는 간단한 프로그램을 작성해 보겠습니다.

class ArrayExample {
    public static void main(String[] args) {
        //배열을 생성합니다
        int[] age = {12, 4, 5, 2, 5};
        // 배열 인덱스 값으로 배열 요소에 접근
        for (int i = 0; i < 5; ++i) {
            System.out.println("요소 인덱스 " + i +: " + age[i]);
        };
    };
};

출력

요소 인덱스 0: 12
요소 인덱스  1: 4
요소 인덱스  2: 5
요소 인덱스  3: 2
요소 인덱스  4: 5

어떻게 배열 요소에 접근할 수 있습니까?

이전에 설명한 것처럼, 수치 인덱스를 사용하여 배열의 요소를 쉽게 접근하고 변경할 수 있습니다. 예를 들어,

class ArrayExample {
    public static void main(String[] args) {
        int[] age = new int[5];
        //세 번째 요소에 삽입합니다14
        age[2] = 14;
        //을 삽입합니다34첫 번째 요소를 삽입합니다
        age[0] = 34;
        for (int i = 0; i < 5; ++i) {
            System.out.println("요소의 인덱스 " + i +: " + age[i]);
        };
    };
};

출력

요소의 인덱스 0: 34
요소의 인덱스 1: 0
요소의 인덱스 2: 14
요소의 인덱스 3: 0
요소의 인덱스  4: 0

예제:Java 배열

 아래의 프로그램은 int 타입 배열에 저장된 값을 총합과 평균으로 계산합니다.

class SumAverage {
    public static void main(String[] args) {
        int[] numbers = {2, -9, 0, 5, 12, -25, 22, 9, 8, 12};
        int sum = 0;
        Double average;
     
        //각 루프에서 요소에 대해 접근하기 위해 사용됩니다
        for (int number: numbers) {
            sum += number;
        };
     
        int arrayLength = numbers.length;
        //sum과 배열 길이를 double로 변환하면 평균 average는 double입니다
        average =  ((double)sum / (double)arrayLength);
        System.out.println("Sum = " + sum);
        System.out.println("Average = " + average);
    };
};

출력

Sum = 36
Average = 3.6

위의 예제에서는 이름을 가진 숫자 배열을 생성했습니다. 배열의 각 요소에 대해 for...each 루프를 사용하여 접근할 수 있습니다. for...each 루프에 대한 더 많은 정보를 얻으려면 방문하십시오Java for ... each 루프

루프에서 각 요소의 합을 계산합니다. 주의해야 할 점은 이 줄입니다

int arrayLength = number.length;

여기서, 우리는 배열의 length 속성을 사용하여 배열의 크기를 계산합니다. 그런 다음 다음 공식을 사용하여 평균을 계산합니다:

average = ((double)sum / (double)arrayLength);

많이 보고 있듯이, 우리는 int 값을 double 값으로 변환하고 있습니다. Java에서 이를 타입 변환이라고 합니다. 타입 변환에 대한更多信息를 얻으려면 방문해 주세요Java 타입 변환

다차원 배열

 지금 우리가 언급하는 배열은 일차원 배열이라고 합니다. 그러나 Java에서는 다차원 배열을 선언할 수 있습니다.
다차원 배열은 배열의 배열입니다. 다시 말해, 다차원 배열의 각 요소는 배열 자체입니다. 예를 들어,

double[][] matrix = {{1.2, 4.3, 4.0}, 
      {4.1, -1.1};
};

여기서, 우리는 다차원 배열 matrix를 생성했습니다. 이는 이차원 배열입니다. 더 많은 정보를 얻으려면 방문해 주세요Java 다차원 배열