Java - 배열

제훈·2024년 7월 15일

Java

목록 보기
10/34

배열

배열 : 동일한 자료형의 묶음

  • heap 영역에 new 연산자를 통해 할당된다.
  • 배열의 길이는 최초 선언한 값으로 "고정"되고, 인덱스를 통해 데이터에 접근할 수 있다.

배열 사용하는 이유

배열을 사용하지 않으면 동일한 자료형을 가진 다양한 값들을 각각의 변수에 저장해서 사용해야 한다.

변수의 선언을 줄여주고, 반복문 등을 이용해 계산과 같은 과정을 쉽게 할 수 있다.


1차원 배열


사진과 같이 선언할 수 있다.
1. 참조 변수만 먼저 선언 -> 크기 및 값을 이후에 초기화
2. 최초 선언 시 배열의 크기 및 값을 할당

2가지 방법이 있다.


다차원 배열 개요

2차원 배열 선언

2차원 배열 이상의 배열도 선언 가능하지만 그다지 사용하지는 않는다.

2차원 배열 : 1차원 배열 여러 개를 하나로 묶어서 관리하는 배열




배열의 복사

배열은 목적에 따라 복사를 해야할 수도 있다.

배열 복사의 종류

  1. 얕은 복사 (shallow copy) : stack의 주소값만 복사 -> 원본을 공유할 목적
  2. 깊은 복사 (deep copy) : heap의 배열에 저장된 값을 복사 -> 원본과 사본을 분리하여 관리할 목적

얕은 복사 개요

얕은 복사 : stack에 저장되어 있는 배열의 주소값만 복사
즉, 2개의 레퍼런스 변수는 동일한 배열의 주소값을 가지고 있게 돼 하나의 변수에서 배열의 값을 수정하게 되면 다른 변수에서도 같이 변경된다.


깊은 복사 개요

깊은 복사 : heap에 생성된 배열이 가지고 있는 값을 또 다른 배열에 복사해놓은 것
서로 같은 값을 가지고 있지만, 다른 배열이어서 영향을 주지 않는다.

profile
백엔드 개발자 꿈나무

0개의 댓글