본문 바로가기
자료구조와 알고리즘 (Java)

[자료구조][Java] 배열( Array )

by IGBR 2022. 4. 19.

1. 배열은 왜 필요 할까?

  • 같은 종류의 데이터를 효율적으로 관리하기 위해 사용
  • 같은 종류의 데이터를 순차적으로 저장.
  • 장점 
    • 빠른 접근 가능
      • 첫 데이터의 위치에서 상대적인 위치로 데이터 접근 (인덱스 번호로 접근)
  • 단점
    • 데이터 추가/삭제의 어려움
      • 미리 배열의 최대 크기를 지정해야 함

 

2. Java에서는 기본 문법으로 배열을 지원

  • 1차원 배열은 [ ] 를 통해 선언할 수 있음
  • 각 아이템은 { } 내에 콤마로 구분하여 작성
// new 키워드를 사용해서, 배열을 미리 선언하고, 데이터를 넣을 수도 있음
Integer[] data_list = new Integer[10];
data_list[0] = 1

 

  • C 언어와 다르게 Java는 선언 과정에서 배열의 크기를 지정할 수 없다.
// 선언 부에서 절대로 배열의 크기를 지정할 수 없다.
int month[]; // O
int month[12]; // X
// 직접 배열 데이터 선언과 동시에 값 기입 가능
// 이럴경우 자동으로 data_list1의 배열 크기는 5로 지정 된다.
Integer data_list1[] = {5, 4, 3, 2, 1};

Integer[] data_list2 = {1, 2, 3, 4, 5};

System.out.println(data_list2[0]);
// 1

 

  • 배열 선언 이후 초기화를 하고 싶을 때
int num1[] = {1, 2, 3}; // O

int num2[];
num2 = {4, 5, 6}; // X
num2 = new int[] {4, 5, 6}; // O

 

  • 배열의 원소를 하나만 출력
int[] num = {1, 2, 3, 4, 5, 6, 7};

System.out.println(num[0]+"");

 

  • 배열의 원소를 전부 출력
int[] num = {1, 2, 3, 4, 5, 6, 7};

// 일반 for 문을 사용하는 방법
for (int i = 0 ; i < num.length ; i++ )
	System.out.println(num[i]+"");
    
// for-each 문을 사용하는 방법
for (int value : num )
	System.out.println(value+"");

댓글