복잡한뇌구조마냥

[JAVA] 자주 사용하는 자료형 핵심 메소드 정리 본문

BE/JAVA

[JAVA] 자주 사용하는 자료형 핵심 메소드 정리

지금해냥 2025. 7. 14. 22:27

✅ String (불변 객체)

메서드설명
charAt(int index) 특정 위치 문자 반환
substring(int begin, int end) 부분 문자열 추출
indexOf(String s) 부분 문자열 인덱스
contains(CharSequence s) 포함 여부
equals(Object o) 문자열 동일 여부
startsWith(String prefix) / endsWith(String suffix) 접두사/접미사 여부
replace(old, new) / replaceAll(regex, new) 문자열 치환
split(String regex) 문자열 분할
toCharArray() 문자 배열로 변환
trim() 앞뒤 공백 제거
toLowerCase() / toUpperCase() 소문자/대문자 변환

✅ ArrayList<E> (동적 배열)

메서드설명
add(E e) 요소 추가
add(int index, E e) 특정 위치에 요소 삽입
get(int index) 특정 인덱스 요소 조회
set(int index, E e) 특정 인덱스 값을 변경
remove(int index) 인덱스로 요소 제거
remove(Object o) 객체로 요소 제거
size() 요소 개수 반환
isEmpty() 비어있는지 여부
clear() 모든 요소 제거
contains(Object o) 해당 값이 포함되어 있는지
indexOf(Object o) 처음 등장하는 인덱스 반환 (없으면 -1)
toArray() 배열로 변환

 

✅ StringBuffer / StringBuilder (동일 API) (가변 문자열)

메서드설명
append(String s) 문자열 뒤에 추가
insert(int offset, String s) 특정 위치에 문자열 삽입
delete(int start, int end) 범위 삭제 (start ~ end-1)
deleteCharAt(int index) 특정 위치 문자 삭제
replace(int start, int end, String s) 범위 치환
reverse() 문자열 뒤집기
charAt(int index) 특정 문자 조회
setCharAt(int index, char c) 특정 위치 문자 수정
length() 문자열 길이 반환
toString() String으로 변환
 

💡 StringBuffer는 스레드 안전, StringBuilder는 성능이 더 좋지만 비동기 환경에서 안전하지 않음.

 


✅ HashMap<K, V>

메서드설명
put(K key, V value) 키-값 추가 또는 갱신
get(K key) 키에 해당하는 값 반환
getOrDefault(K key, V defaultValue) 값이 없으면 기본값 반환
containsKey(K key) 키 존재 여부
containsValue(V value) 값 존재 여부
remove(K key) 키 제거
keySet() 키 집합 반환
values() 값 집합 반환
entrySet() 키-값 쌍 반환 (for-each 순회용)
size() 요소 수 반환
isEmpty() 비어 있는지 여부
clear() 초기화

 

✅ HashSet<E>

메서드설명
add(E e) 요소 추가 (중복 제거)
remove(Object o) 요소 제거
contains(Object o) 포함 여부
size() 요소 수 반환
clear() 초기화
isEmpty() 비어 있는지 여부
iterator() 반복자 반환 (for-each 가능)

 

✅ Queue<E> (보통 LinkedList<E>로 구현)

메서드설명
offer(E e) 큐에 삽입 (성공 여부 반환)
add(E e) 큐에 삽입 (실패 시 예외)
poll() 앞 요소 제거하고 반환 (비어있으면 null)
remove() 앞 요소 제거하고 반환 (비어있으면 예외)
peek() 앞 요소 조회만 (제거 X)
element() 앞 요소 조회 (예외 있음)
isEmpty() 비어 있는지 여부
 

 


✅ Stack<E> (Deque를 더 권장)

메서드설명
push(E e) 요소 추가
pop() 요소 제거 및 반환
peek() 맨 위 요소 반환 (제거 X)
isEmpty() 비어있는지 확인
search(Object o) 위치 반환 (1부터 시작)
LIST