Notice
Recent Posts
Recent Comments
Link
판봉 개발 일기
ArrayList 본문
728x90
ArrayList는 List 인터페이스의 대표적인 구현 클래스이다.
밑은 ArrayList 객체를 생성하는 방법이다.
더보기
List<E> list = new ArrayList<E>();
ArrayList를 생성하려면 저장할 객체타입을 표기하고 기본 생성자를 호출하면 된다.
더보기
ex)String을 저장하는 ArrayList 생성
List<String> list = new ArrayList<String>();
List<String> list = new ArrayList();
항상 ();찍는 것을 주의하자.
그리고 두번째 코드는 왼쪽에 지정된 타입을 따라간다.
결론적으로 위 두코드는 동일하다.
기본 생성자로 ArrayList 객체를 생성하면 내부에 10개의 객체를 저장할 수 있는 용량이 생긴다.
저장할 객체 수가 늘어나면 용량이 자동적으로 증가한다고 한다.
판봉의 코멘트 : 배열보다 겁나게 좋은 것 같다..
하지만 이런 ArrayList도 단점이 있는데
ArrayList에서 특정 인덱스의 객체를 제거한다면 바로 뒤 인덱스부터 마지막에 있는 인덱스가 모두 앞으로 하나씩 당겨진다.
그렇기 때문에 객체수가 많고 특정인덱스에 객체 추가와 객체 제거가 많이 일어 난다면
ArrayList는 사용하지 않는 것이 좋다.
하지만 인덱스를 이용하여 객체를 찾거나 맨 마지막에 객체를 추가할때는 좋은 결과를 낸다.
ex) String 객체를 저장하는 ArrayList 예제이다.
import java.util.*;
public class ArrayList {
public static void main(String[] args) {
List<String> list = new ArrayList<Stirng>();
list.add("JAVA재밌다");
list.add("C언어는어떨까");
list.add("잘하고싶다.");
list.add(2, "열심히하자");
list.add("배고파");
int size = list.size();
System.out.println("총 객체수 : " + size);
System.out.println();
String indexGet = list.get(2);
System.out.println("2:"+ indexGet);
System.out.println();
for(int i = 0 ; i < list.size(); i++) {
String str = list.get(i);
System.out.println(i + ":" + str);
}
System.out.println();
list.remove(2);
list.remove(2);
list.remove("배고파");
for(int i = 0 ; i <list.size(); i++) {
String str = list.get(i);
System.out.println(i + ":" + str);
}
}
}
/* 결과 값으론 총 객체 수 :5 /
2: 열심히하자 /
0: JAVA재밌다. 1: C언어는어떨까 2:열심히하자 3:잘하고싶다 4:배고파/
0: JAVA재밌다. 1: C언어는어떨까 */
'자바 복습' 카테고리의 다른 글
Set 컬렉션에 대하여 알아보자 (0) | 2021.07.13 |
---|---|
List 컬렉션중 하나인 LinkedList에 대하여 알아보자 (0) | 2021.07.13 |
List 컬렉션중 하나인 Vector에 대하여 (0) | 2021.07.13 |
List 컬렉션 (0) | 2021.07.12 |
컬렉션 프레임워크 (0) | 2021.07.12 |