티스토리 뷰

Java

[JAVA] 배열(Array)

TreeBomb 2023. 11. 30. 17:29

배열이란?

- 같은 자료형의 변수를 지정하여 여러 데이터를 저장할 수 있는 저장공간을 의미한다.

- 여러 데이터를 담을 수 있는 구조를 자료구조라고 한다.

- 배열을 사용하면 같은 자료형의 데이터를 효율적으로 다룰 수 있다.

 

배열의 특징

- 배열 선언 시 크기를 지정한다.

- 배열 선언 후 공간의 크기를 늘리거나 삭제할 수 없다.

- 지정된 자료형의 값만 저장할 수 있다.

 

인덱스란?

배열 안에 여러 데이터가 들어가는데 데이터들의 위치를 알려주는 것이 인데스(index)이다.

인덱스의 번호는 0부터 시작하고 순차적으로 증가한다.

 

배열의 선언방법

자료형[ ] 배열명;  or 자료형 배열명[ ]

int[] arr1;	//자료형[] 배열명
int arr2[];	//자료형 배열명[]

- 대괄호[ ] 배열의 연산자를 의미한다.

- 자료형 뒤에 붙이거나 변수명 뒤에 붙이면 그 자료형은 배열이라는 의미를 가진다.

 

배열의 생성

arr = new int[4];	//배열명 = new 자료형[크기];

배열을 생선만 하고 선언을 해주지 않으면 시스템은 배열을 만들 때 null이라는 키워드를 부여한다.

배열은 만들어졌지만 그 안에 값을 담을 공간이 생성되지 않았다는 뜻이다.

 

배열도 선언과 생성을 동시에 할 수 있다.

int[] arr = new int[4];

 

배열의 초기값

자료형 데이터
정수 0
실수 0.0
문자형 ''
객체형 null

배열에 데이터 추가하기

arr[0] = 100;	//배열명[인덱스] = 데이터;
arr[1] = 200;
arr[2] = 300;
arr[3] = 400;

배열의 인덱스 하나가 하나의 변수라고 생각하면 편할 것 같다.

 

선언과 생성 초기화까지 동시에 할 수 있다.

int[] ar = {1,2,3,4,5};	//선언, 생성, 추가 한번에 가능하다.

 

배열 출력하기

System.out.println(arr);	//배열의 주소값
System.out.println(arr[0]);	//인덱스 위치에 있는 데이터 출력
System.out.println(arr[1]);
System.out.println(arr[2]);
System.out.println(arr[3]);

결과

[I@78ac1102	//주소값 우리가 알아볼 수 없다
100	//arr[0]의 값
200	//arr[1]의 값
300	//arr[2]의 값
400	//arr[3]의 값

 

배열의 크기가 커지면 출력하기 불편하니 저번에 배웠던 제어문을 활용해 보자

for(int i = 0; i < ar.length; i++) {	//배열명.length : 배열의 크기를 반환해줌
	System.out.println(ar[i]);
}

결과

1
2
3
4
5

for문을 사용하여 보다 간단하게 출력을 할 수 있다.

 

정수형으로만 코드를 설명했지만 다른 자료형들도 배열로 만들 수 있다.

 

[JAVA]배열2(Arrays)

Arrays란? - Arrays클래스는 배열의 복사, 정렬, 검색 등 배열을 다루기 위한 다양한 메서드를 제공하고 있다. Arrays 사용법 Arrays.함수명(); 배열의 출력 Arrays.toString(배열명); Integer[] arr2 = {1,6,2,3,10,7,4,5

treebomb-code.tistory.com

 

'Java' 카테고리의 다른 글

[JAVA]클래스(Class)  (0) 2023.12.13
[JAVA]배열2(Arrays)  (0) 2023.12.01
[JAVA]기타제어문(break,continue)  (2) 2023.11.30
[JAVA] 제어문(for,while)  (0) 2023.11.28
[JAVA] 제어문(if, switch)  (0) 2023.10.24