📙 자바 Java

[자바/Java] 배열 (Array)

핑크빛연어 2021. 5. 6. 00:37

 

 

 배열 (Array)

 

선형 자료구조(Data Structure) 중 하나로, 동일한 자료형(Data Type) 의 데이터를 메모리에 연속적으로 저장하여 연관된 데이터를 그룹화해서 관리하기 위한 자료구조

 

동일한 자료형을 저장하기 위한 변수의 선언을 줄여주며

반복문 등을 이용하여 계산과 같은 과정을 쉽게 처리할 수 있다.

 

배열의 접근에는 0부터 시작하는 인덱스(index) 를 통해 테이터에 접근할 수 있다.

가장 첫번째 요소의 인덱스(index) 가 0 이고 N 번째 요소까지 있다면 인덱스(index) 는 0 ~ (N-1) 이 된다.

 

 

 

 

 1차원 배열 - 선언 / 크기 할당 / 값 초기화

 

//1차원 배열 선언 (크기 할당 및 초기화 없이 배열 참조변수만 선언) 
int[] arr1; 
int arr2[]; 


//1차원 배열 선언 및 크기 할당  
int[] arr3 = new int[7];
double[] arr4 = new double[10];
boolean[] arr5 = new boolean[6];
String[] arr6 = new String[5]; 
int[] arr7; 
arr7 = new int[5];


//1차원 배열 선언 및 크기 할당  및 값 초기화
int[] arr8 = {1,2,3,4,5};
int[] arr9 = new int[] {1,3,5,2,4}; 
String[] weeks = {"월","화","수","목","금","토","일"}; 

 

int[] arr7 = new int[5];

 

 

 

 

 2차원 배열 - 선언 / 크기 할당 / 값 초기화

 

//2차원 배열 선언 
int[][] arr10 = new int[4][3];  //세로길이가 4, 가로길이가 3 인 int 형 배열 
double[][] arr11 = new double[3][5];  //세로길이가 3, 가로길이가 5 인 int 형 배열 
String[][] arr12 = new String[3][7];  //세로길이가 3, 가로길이가 7 인 int 형 배열 



//2차원 배열의 선언 및 값 초기화 
int[][] arr15 = { {1,2,3,4}, {5,6,7,8}, {9,10,11,12} };
int[][] arr16 = new int[][] { {1,2,3,4}, {5,6,7,8}, {9,10,11,12} };

int[][] arr13 = new int[4][3];  //3의 크기의 배열을 4개 가지는 2차원 배열 할당  
int[][] arr14 = { {2, 5, 3}, {4, 4, 1}, {1, 7, 3}, {3, 4, 5} }; 

int[][] arr17 = { {1,2}, {3,4,5}, {6,7,8,9} };  


 

int[][] arr10 = new int[4][3];
int[][] arr17 = { {1,2}, {3,4,5}, {6,7,8,9} };

 

 

 

 

 참조 타입 (Reference type) 의 배열

 

기본 타입(Primitive type) 의 배열인 경우 초기값을 int=0 으로 가지고 있으나

참조 타입(Reference type) 의 배열인 경우 초기값이 null 이 된다.

//객체(Class) 배열 선언 
Bear[] bearArr = new Bear[4];
//Bear Class의 인스턴스 최대 4개 할당할 수 있는 배열 
//bearArr[0] == null 
//bearArr[1] == null
//bearArr[2] == null 
//bearArr[3] == null

 

 

 

 

 for / for-each 문 을 통한 배열 출력

 


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


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


/* for-each 문 */
//배열 arr의 모든요소를 각각 num 이라 할때 
//반복의 대상은 배열 arr 
for(int num : arr) {
	System.out.println(" num :: "+num);
}
---------- 결과 ----------
 num :: 1
 num :: 2
 num :: 3
 num :: 4
 num :: 5
------------------------


 

 

감사합니다 :}

 

 

 

728x90
반응형