본문 바로가기

한권떼기/자바의 정석

[한권떼기] 자바의정석 챕터05. 배열(Array)

728x90
반응형

**자바의 정석(남궁성 저)를 읽고 정리한 글입니다.

 

배열이란?

배열: 같은 타입의 여러 변수를 하나의 묶음으로 다루는 것

 

아래와 같이 생성

int[] myArr; //배열을 다루기 위한 참조변수

myArr = new int[4]; //실제 저장공간 생성

 

메모리에 아래와 같이 저장됨

int 배열의 실제 메모리 모습
String 배열의 실제 모습

배열의 길이를 변경하는 방법

배열은 기본적으로 한 번 생성하면 길이를 바꿀 수 없음

따라서 더 큰 배열을 새로 생성하여 값을 복사해야함

 

String vs char[]

String과 char[] 은 본질적으로는 동일한 것임

String 클래스는 char 배열에 메서드를 더 추가해서 개발자가 편하게 사용할 수 있도록 한 것

중요한 차이점은 String 객체는 char 배열과는 다르게 immutable함(변경불가능).

-> 문자열을 변경하는 것이 아니라, 문자열을 새로 만들고 그 문자열의 참조값을 다시 String 객체 변수 값으로 넣어주는 것!

 

 

728x90
반응형