ArrayList 생성 및 기본 사용법
import java.util.ArrayList;
public class Example {
public static void main(String[] args) {
ArrayList<Integer> list = new ArrayList<>(); // ArrayList 생성
}
}
요소 추가 메소드
add(E e)
리스트 끝에 요소를 추가함. Python의 append와 비슷한 느낌
list.add(1);
list.add(2);
list.add(3);
add(int index, E element)
특정 위치에 요소를 추가
list.add(1, 10); // 인덱스 1에 10을 추가
요소 삭제 메소드
remove(int index)
특정 위치의 요소를 삭제
list.remove(1); // 인덱스 1의 요소를 삭제
remove(Object o)
특정 객체를 삭제
list.remove(Integer.valueOf(2)); // 값이 2인 첫 번째 요소를 삭제
요소 조회 메소드
get(int index)
특정 위치의 요소를 반환
int value = list.get(1); // 인덱스 1의 요소를 반환
indexof(Object o)
특정 객체의 인덱스를 반환, 존재하지 않는다면 -1 반환
int index = list.indexOf(10); // 값이 10인 요소의 인덱스를 반환
lastIndexOf(Object o)
특정 객체의 마지막 인덱스를 반환, 존재하지 않는다면 -1 반환
int lastIndex = list.lastIndexOf(10); // 값이 10인 마지막 요소의 인덱스를 반환
리스트 크기 및 확인 메소드
size()
리스트의 크기 반환
int size = list.size(); // 리스트의 크기를 반환
isEmpty()
리스트가 비어있는지 여부 반환
boolean empty = list.isEmpty(); // 리스트가 비어있는지 확인
리스트 변환 및 복사 메소드
toArray()
리스트를 배열로 변환
Object[] array = list.toArray(); // 리스트를 배열로 변환
toArray(T[] a)
특정 타입의 배열로 변환
Integer[] array = list.toArray(new Integer[0]); // 리스트를 Integer 배열로 변환
리스트 정렬 메소드
ArrayList 자체에는 정렬 메소드가 없음.
Collections 클래스를 사용하여 정렬 가능
Collections.sort(List<T> list)
리스트를 정렬
import java.util.Collections;
Collections.sort(list); // 리스트를 오름차순으로 정렬
리스트 필터링 및 기타 유용한 메소드
contains(Object o)
특정 객체가 리스트에 포함되어 있는지 확인
boolean contains = list.contains(10); // 리스트에 10이 포함되어 있는지 확인
clear()
리스트의 모든 요소 제거
list.clear(); // 리스트의 모든 요소를 제거
addAll(Collection<? extends E> c)
다른 컬렌션의 모든 요소를 리스트에 추가
ArrayList<Integer> anotherList = new ArrayList<>();
anotherList.add(4);
anotherList.add(5);
list.addAll(anotherList); // anotherList의 모든 요소를 list에 추가
subList(int fromIndex, int toIndex)
리스트의 특정 부분을 새로운 리스트로 반환, 슬라이싱 느낌인가?..
List<Integer> sublist = list.subList(1, 3); // 인덱스 1부터 3(포함하지 않음)까지의 서브리스트 반환
'java' 카테고리의 다른 글
내 마음의 위험한 배열 (0) | 2024.06.27 |
---|---|
ArrayList의 toArray() (0) | 2024.06.25 |
자바 타입 확인 메소드 (0) | 2024.06.21 |
자바를 공부하며 (0) | 2024.06.21 |
valueof가 뭘까 (0) | 2024.06.20 |