ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Java] 배열(Array)
    프로그래밍/JAVA 2022. 8. 6. 08:39
    728x90

     

     

    변수는 한개의 데이터만을 저장할 수 있기 때문에 데이터의 수가 많아지면 그만큼 많은 변수가 필요하다.

    배열은 동일한 데이터 타입의 변수를 연속적으로 생성한 집합으로 정의할 수 있다.

     

    배열은 인덱스라는 개념을 포함한다. 인덱스는 데이터를 빠르고 쉽게 찾기위한 하나의 장치로, 배열의인덱스는 데이터가 저장된 위치를 가리키게된다.

     

    배열의 선언

    // 방법 1.
    데이터타입[] 배열명;
    int[] num;
    
    // 방법 2.
    데이터타입 배열명[];
    int num[];
    
    // 방법 1과 방법 2는 같지만 방법 1을 더 권장한다.

     

    배열의 메모리 할당

    배열명 = new 데이터타입[요소의 개수];
    num = new int[3];

     

    배열의 초기화

    // 배열의 선언과 동시에 초기화 가능
    int[] num1 = {70, 90, 80};
    
    // 배열의 선언 후 초기화 가능
    int[] num2 = new int[3];
    num2[0] = 10;
    num2[1] = 20;
    num2[2] = 30;
    
    // 배열의 선언과 동시에 초기화 가능
    int[] num3 = new int[]{70, 90, 80}; 
    
    // 이미 선언된 배열은 이 방법으로만 초기화 가능
    int[] num4;
    num4 = new int[]{70, 90, 80};
    
    // 이미 선언된 배열을 이 방법으로 초기화하면 오류가 발생
    int[] num5;
    num5 = {70, 90, 80}; // 오류 발생

     

    사용 예)

    int[] arr = new int[4]; // 한번에 작성 가능.
    arr[0] = 10;
    arr[1] = 20;
    arr[2] = 30;
    System.out.println(arr[0]);
    System.out.println(arr[1]);
    System.out.println(arr[2]);
    System.out.println(arr[3]); // 값을 할당 받지않으면 초기값0 출력
    
    /* 실행결과
    10
    20
    30
    0
    */

     


     

    2차원 배열

    2차원 배열은 값이 행과 열로 구성된 배열을 말한다.

    데이터 타입[][] 배열명 = new 데이터타입[행요소개수][열요소개수];
    int[][] num = new int[2][3];
    
    
         열
     행  [0,0] [0,1] [0,2]
         [1,0] [1,1] [1,0]

     

    1차원)
        int[] num = new int[5];
        num[0] = 10;
        num[1] = 20;
        num[2] = 30;
        num[3] = 40;
        num[4] = 50;
    
        == int[] num = {10,20,30,40,50};
        
     
    2차원)
        int[][] num = new int[2][3];
        num[0][0] = 10;
        num[0][1] = 20;
        ...
         num[1][2] = 60;
    
        == int[][] num = {{10, 20, 30},{40, 50, 60}};

     


     

    가변 배열(dynamic array)

    가변 배열은 배열의 요소개수를 명시하지않고 유동적으로 길이를 배열을 저장할 수 있는 배열을 뜻한다.

     

    int[][] num = {
        {10, 20, 30},
        {10, 20},
        {10, 20, 20, 30}
    };
    
    /* 결과
    10 20 30
    10 20
    10 20 30 40 
    */

     


     

    향상된 for문

    for(변수선언 : 배열){
    	배열의 요소만큼 반복할 문장;
    }
    
    args = {"홍길동", "이순신", "윤봉길"};
    for(String s : args){
        System.out.println(s)
    }
    
    /* 실행결과
    홍길동
    이순신
    윤봉길
    */

     

     

     

     

     

    728x90

    '프로그래밍 > JAVA' 카테고리의 다른 글

    [Java] 객체지향 프로그래밍  (0) 2022.08.06
    [Java] String 클래스  (0) 2022.08.06
    [Java] 중첩 반복문  (0) 2022.08.03
    [Java] continue, break  (0) 2022.08.03
    [Java] 반복문 for  (0) 2022.08.03

    댓글

Designed by Tistory.