본문 바로가기

[JAVA] 배열 (Array) 다루기

인포꿀팁 발행일 : 2022-03-15

배열

- 배열은 같은 타입의 여러 변수를 하나의 묶음으로 다루는 것

 

배열 선언과 생성

배열의 선언 - 배열을 다루기 위한 참조변수의 선언

  1. 타입[] 변수이름; => java에서 선호하는 방식

- 선언시 참조변수값과 저장공간이 생성됨.

- score[index] 로 각 저장공간에 접근 및 변경이 가능하다.

int[] score =new int[5];

 

    2. 타입 변수이름[]; .Int score[]; 

 

타입[] 변수이름; // 참조변수 선언

변수이름 = new 타입[길이]; // 실제 저장공간을 생성

 

package com.example.Arrays;

public class Array_1 {
    public static void main(String[] args) {
        
    
        //int[] score;        // 1. 배열 score를 선언(참조변수)
        //score = new int[5]; // 2. 배열의 생성(int 저장공간 x 5)


        int[] score = new int[5]; // 배열 선언과 생성 동시에 실행
        score[3]=100; // 저장공간(요소)에 값 입력

        System.out.println("score[0] = "+ score[0]);
        System.out.println("score[1] = "+ score[1]);
        System.out.println("score[2] = "+ score[2]);
        System.out.println("score[3] = "+ score[3]);
        System.out.println("score[4] = "+ score[4]);
        /*
            score[0] = 0
            score[1] = 0
            score[2] = 0
            score[3] = 100
            score[4] = 0
         */
        int value = score[3];
        System.out.println(value); //100
        }
}

배열의 인덱스

각 요소(저장공간)에 붙는 일련 번호

 

배열의 길이

배열은 한번 생성하면 그 길이를 바꿀 수 없다.

배열이름.length - 배열의 길이 (int형 상수)

int[] arr = new int[5]; // 길이가 5인 int 배열

Int tmp = arr.length; // arr.length 값은 5이고 tmp에 5가 저장

 

package com.example.Arrays;
/**
 * 배열의 길이
 */
public class Array_2 {
    public static void main(String[] args) {
        int[] arr = new int[5];
        System.out.println("arr.length = " + arr.length); // 5

        for(int i=0;i<arr.length;i++){
            System.out.println("arr[" + i+ "] = "+ arr[i]);
            /**
            arr[0] = 0
            arr[1] = 0
            arr[2] = 0
            arr[3] = 0
            arr[4] = 0
             */
        }

    }
}

배열의 초기화

배열의 각 요소에 처음으로 값을 저장하는 것

 

  1. int[] score = new int[]{1,2,3,4,5};
  2. int[] score = {1,2,3,4,5}; // 보통 이 방식을 사용함

 

배열의 출력

int[] iArr = {1,2,3,4,5};

println(iArr) => 참조변수 주소값이 출력됨

 

package com.example.Arrays;

import java.util.Arrays;

public class Array_3 {
    public static void main(String[] args) {
        int[] iArr = {1,2,3,4,5};
        for(int i=0;i<iArr.length;i++){
            System.out.println(iArr[i]);
        }

        //[1, 2, 3, 4, 5]
        System.out.println(Arrays.toString(iArr));

    }
}

String 배열의 선언과 생성

String[] name = new String[3]; 

  • 배열의 기본 값은 null
package com.example.Arrays;

import java.util.Arrays;

public class Array_String1 {
    public static void main(String[] args) {
        String[] strArr = {"가위","바위","보"};
        System.out.println(Arrays.toString(strArr));

        for(int i=0;i<10;i++){
            // random() => 0~0.9 까지의 난수 생성
            int tmp = (int)(Math.random()*3);
            System.out.println(strArr[tmp]);
        }
    }
}

댓글