본문 바로가기
안드로이드

배열보다 편한 ArrayList

by 코딩히어로 2022. 3. 24.
728x90

안드로이드 자바를 사용하여 개발하다 보면 ArrayList라는 것을 만나게 됩니다.

처음에 개념을 익히기 전까지는 아무래도 C언어를 먼저 접해서 확장한 개발자다 보니

배열을 많이 사용하였지만 이제는 자바 프로그램에서 배열은 거의 사용하지 않습니다.

 

그래서 이번에는 이렇게 편리한 ArrayList에 대해 간단하게 정리하려고 합니다.

 

ArrayList는 C언어로 따지자면 배열이긴 하지만 포인터를 통해 만든 배열과 같습니다.

이 말이 무엇이냐면 C언어에서는 포인터 주소 값 참조를 통해서 배열을 구성할 수 있는데

이러한 방법은 배열의 길이가 가변적이면서 중간에 인자를 변경할 수도 삭제할 수도 있는 구조입니다.

 

말이 어렵긴 한데 어쨌든 ArrayList는 가변 배열이라고 생각하시면 편합니다.

먼저 ArrayList를 사용하기 위해서 선언 및 생성을 해줍니다.

 

ArrayList 생성


ArrayList<Integer> TestArray;

@Override
protected void onCreate(Bundle savedInstanceState){
	TestArray = new ArrayList<Integer>();
}

 

ArrayList를 선언할 때 <> 안에 들어가는 인자는 ArrayList에 저장될 변수 타입입니다.

즉 Integer가 아니라 String, Double 등등 다른 변수 타입으로 지정이 가능합니다.

 

 

ArrayList 요소 추가


TestArray.add(0);

 

ArrayList는 요소를 추가하는 게 정말 간단합니다.

위와 같이 add라는 것을 이용하여 추가하는데 ArrayList 요소가 몇 개인지 신경 쓰지 않고

계속해서 add가 가능하기 때문에 어떻게 보면 가능한 무제한이라고 볼 수 있습니다.

 

 

ArrayList 요소 설정


TestArray.set(0,5);

 

ArrayList에 저장된 요소 값을 변경하고자 할 때에는 set을 사용합니다.

0번째 요소의 값을 5로 변경하라는 문구는 위와 같이 표현됩니다.

 

 

ArrayList 요소 삭제


TestArray.remove(0);

 

ArrayList 요소를 삭제하고자 할 때에는 삭제하고자 하는 index값을 remove에 써줍니다.

만약에 요소가 3개가 있는 ArrayList에서 2번째 요소를 삭제하게 되면 어떻게 될까요?

바로 3번째 요소가 2번째 요소로 당겨지게 됩니다.

이렇듯이 ArrayList는 요소가 없어지면 자동으로 뒤예요 소가 앞으로 당겨지고

추가하면 뒤로 밀리는 것을 자동으로 해주기 때문에 너무 사용이 편합니다.

 

2022.03.24 - [안드로이드] - ArrayList 응용

 

ArrayList 응용

ArrayList를 사용할 때 좋은 점은 객체를 넣을 수 있다는 것입니다. 이게 무엇이냐면 예를 들어 기존에는 ArrayList 와같이 <> 요소의 형태를 Integer 등의 타입을 넣었다면 여기서 한발 더 나아가서 객

codinghero.tistory.com

 

728x90
반응형

'안드로이드' 카테고리의 다른 글

안드로이드 버튼 길게 터치 이벤트  (6) 2022.04.01
ArrayList 응용  (6) 2022.03.24
Hex String to byte 변환  (8) 2022.03.22
안드로이드 스튜디오 느릴 땐 메모리 설정  (22) 2022.03.04
안드로이드 Stack Clear  (9) 2022.03.03

댓글