자바의 정석 - 기초편

배열의 길이, 배열의 초기화

ODaram 2022. 8. 2. 16:38

배열의 길이

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

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

  int  tmp = arr.length;  // arr.length의 값은 5이고 tmp에 5가 저장된다.

  
    "배열은 한번 생성하면 (실행하는 동안) 그 길이를 바꿀 수 없다." 

1) 배열 길이를 왜 바꿀 수 없는가?

    늘리려고 하면 옆에 공간이 비어있는지 모름

    부족하면 새로 큰 것을 만들어 기존의 내용을 복사함

 

        int[] score = new int[6];

       // 배열의 모든 요소 출력

       for (int i=0; i<6; i++) 

            System.out.println(score[i]);

       -> 

        int[] score = new int[5];   // 배열의 길이를 6에서 5로 변경

        for (int i=0; i< score.length; i++)  //  위의 배열 크기가 변경되어도 조건식을 변경하지 않아도 됨

             System.out.println(score[i]);

       

예제) 길이가 5인 int 배열 arr 길이 출력해보기

int[] arr = new int[10]; // 길이가 10인 int 배열 arr을 생성
    System.out.println("arr.length="+arr.length);

결과값

 

배열의 초기화

 배열의 각 요소에 처음으로 값을 저장하는 것 (배열은 기본적으로 자동 초기화됨 : int -> 0)

  int[] score = new int[5];     // 길이가 5인 int형 배열을 생성한다.

  score[0] = 50;                   // 각 요소에 직접 값을 저장한다. 

  score[1] = 60;

  score[2] = 70;

  score[3] = 80;

  score[4] = 90;

 

반복문을 이용한 초기화

>초기화 방법 1 : 

    int[] score = new int[] {50,60,70};

>초기화 방법 2: 

    int[] score = {50,60,70}; // new int[]를 생략할 수 있음

 

 >>주의사항

  int[] score;

  score = {50,60,70};                        // 에러 new int[] 생략할 수 없음

  -> score = new int[] {50,60,70};      // OK

'자바의 정석 - 기초편' 카테고리의 다른 글

배열의 활용  (0) 2022.08.02
배열의 출력  (0) 2022.08.02
배열의 생성과 선언, 배열의 인덱스  (0) 2022.08.02
break문, continue 문, 이름 붙은 반복문  (0) 2022.08.02
while 문, do-while 문  (0) 2022.08.02