개발지식 먹는 하마 님의 블로그

Java - 배열과 리스트 본문

Java

Java - 배열과 리스트

devhippo 2025. 2. 6. 15:50

[ ArrayList ]

Java에서 사용할 수 있는 동적 배열이다.
ArrayList에 요소를 추가할수록 ArrayList의 크기가 자동으로 늘어난다.

ArrayList<클래스명> 변수명 = new ArrayList<객체>(초기 배열 크기);

ArrayList<클래스명> 변수명 = new ArrayList<>(); //타입 추론, 디폴트 배열 크기 10 지정
  • ArrayList의 요소 타입으로 클래스만을 사용할 수 있다.
  • 초기 배열 크기를 따로 설정하지 않으면 디폴트로 10이 지정된다.
  • 배열의 요소 타입을 생략하면 컴파일러는 문맥으로 타입을 추론한다.
기본적인 메소드 설명
add(요소) 앞에서 부터 차례대로 비어있는 위치에 요소를 추가
add(index, 요소) 지정된 위치에 입력받은 요소를 삽입
해당 위치와 그 뒤의 요소들이 한 자리씩 뒤로 물러난다.
set(index, 요소) 지정된 위치의 요소를 입력받은 요소로 대체
remove(index) 지정된 위치의 요소를 삭제
뒤에 있던 요소들이 한 자리씩 앞으로 이동한다.
remove(요소) 주어진 요소와 동일한 첫 번째 요소를 삭제하고 true를 반환
clear() 리스트의 모든 요소를 삭제
isEmpty() 리스트가 텅 비어있으면 true 반환
contains(요소) 주어진 요소가 리스트에 존재하면 true를 반환
indexOf(요소) 주어진 요소가 리스트에 있으면, 첫 번째 나타난 요소의 인덱스를 반환
포함되어 있지 않으면 -1을 반환
get(위치) 지정된 위치의 요소를 반환
size() 현재 리스트의 크기를 반환

[ LinkedList ]

(이중)연결 리스트를 직접 구현하지 않고 사용할 수 있다.
삭제 연산이 많은 경우 ArrayList 대신 사용하면 좋다.

ArrayList 와 다르게 초기 크기를 인자로 받지 않는다.

LinkedList<클래스명> 변수명 = new LinkedList<>();

[ HashSet ]

집합을 구현하는 자료구조

  • 중복된 요소가 있을 수 없다.
  • 순서가 정의되지 않는다. (set, get 등 위치를 필요로 하는 함수 사용 불가)

[ HashMap ]

'키-값'의 쌍으로 구성된 컬렉션을 저장한다.

HashMap<키 타입, 값 타입> 변수명 = new HashMap<>();
메소드 설명
clear(), isEmpty() -
put(키, 값) 키-값 쌍으로 요소 추가
get(키) 키에 해당하는 값을 가져옴
keySet() 모든 키들의 집합을 만들어서 반환
values() 모든 값들의 컬렉션을  반환
remove(키) 키에 해당하는 키-값 쌍을 삭제
containsKey(키) 주어진 키가 존재하면 true를 반환
containsValue(값) 주어진 값이 존재하면 true를 반환

'Java' 카테고리의 다른 글

Java - 네트워크 프로그래밍  (0) 2025.02.09
Java - 스레드(Thread)  (0) 2025.02.07
Java - 인터페이스  (0) 2025.02.05
Java - 오버로딩, 오버라이딩  (1) 2025.02.04
Java - 상속  (1) 2025.02.03