Notice
Recent Posts
Recent Comments
Link
«   2025/07   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

개발자 꼬부기의 성장일기

8일차 - Java 기초(3) : 배열 본문

언어공부/[코드스테이츠] 백엔드부트캠프

8일차 - Java 기초(3) : 배열

다죵 2023. 4. 20. 10:34

배열 


배열이란, 동일한 타입의 값들을 하나의 묶음으로 묶은 자료 구조

배열을 사용하여 값을 저장하는 경우, 아래와 같이 메모리 공간 상에 연속적으로 값들이 모여서 저장됨

배열은 참조변수.


1차원 배열

배열의 선언 

double[] TmpArray;
TmpArray = new double[30];

배열의 모든 요소는 double형의 기본값인 0.0으로 초기화됨.

double[] tempArray = new double[] { 27.4, 30.1, 31.1, 32.4, ..., 31.8 };

// 선언과 초기화를 하나의 문장으로 할 때에 한해 new double[] 생략 가능.
double[] tempArray = { 27.4, 30.1, 31.1, 32.4, ..., 31.8 };

인덱스로 접근할 수 있다. 

double temp = tempArray[0];

배열의 길이 : tempArray.length 로 구할 수 있다.


실습

Arrays.toString(배열변수) : 배열을 문자열로 변환시켜줌.


2차원 배열

//1. 선언 후 배열크기설정
int[][] kcal;
kcal = new int[31][3];

//2. 선언과 동시에 배열크기 설정
int[][] kcal = new int[31][3];
int[][] kcal = new int[][] { 
	{ 1982, 2098, 2130 }, 
	...
	{ 2278, 2391, 2006 }
};

// 선언과 초기화를 하나의 문장으로 할 때에 한해 new int[][]를 생략할 수 있다. 
int[][] kcal = { 
	{ 1982, 2098, 2130 }, 
	...
	{ 2278, 2391, 2006 }
};
System.out.println(Arrays.toString(kcal[0])); // [1982, 2098, 2130]

가변배열

: 배열길이를 정해놓지 않은 배열로 길이를 마음대로  쓸 수 있다.

int[][] ages = new int[5][];
System.out.println("Arrays.toString(ages) = " + Arrays.toString(ages));
//결과 : [null, null, null, null, null]

//생성 및 초기화방법
ages[0] = new int[5];
ages[1] = new int[6];
ages[2] = new int[7];
ages[3] = new int[8];  
ages[4] = new int[9];

// Arrays.toString(ages[0]) = [0, 0, 0, 0, 0]
// Arrays.toString(ages[1]) = [0, 0, 0, 0, 0, 0]
// Arrays.toString(ages[2]) = [0, 0, 0, 0, 0, 0, 0]
// Arrays.toString(ages[3]) = [0, 0, 0, 0, 0, 0, 0, 0]
// Arrays.toString(ages[4]) = [0, 0, 0, 0, 0, 0, 0, 0, 0]

//생성 및 값 할당 동시에
int[][] ages = {
	{ 30, 32, 39, 59, 23 },
	{ 31, 41, 52, 56, 72, 13 },
	{ 45, 32, 84, 23, 13, 42, 55 },
	{ 23, 41, 62, 64, 23, 51, 67, 98 },
	{ 13, 14, 17, 84, 52, 37, 68, 66, 33 }
};