21.01.15-38일차
🤶 컬렉션 프리임웍(Collections Framework)
🎅 스택과 큐 (Stack & Queue)
👉 스택(stack) : LIFO구조. 마지막에 저장된 것을 제일 먼저 꺼내게 된다.
-> 수식계산, 수식괄호검사, 워드프로세서의 undo/redo, 웹브라우저의 앞으로/ 뒤로...
👉 큐(queue) : FIFO구조. 제일 먼저 저장한 것을 제일 먼저 꺼내게 된다.
-> 최근사용문서, 인쇄작업 대기목록, 버퍼(buffer), 스케쥴링...
🎅 Iterator, ListIterator, Enumeration
- 컬렉션에 저장된 데이터를 접근하는데 사용되는 인터페이스
- Enumeration은 Iterator의 구버전
- ListIterator는 Iterator의 접근성을 향상시킨 것(단방향 -> 양방향)(Enumeration 인터페이스의 메서드)
🎅 Iterator
- 컬렉션에 저장된 요소들을 읽어오는 방법을 표준화한 것
- 컬렉션에 iterator()을 호출해서 iterator를 구현한 객체를 얻어서 사용
🎅 Map과 Iterator
- Map에는 iterator()가 없다.
(keySet(), entrySet(), values()를 호출해야됨) - Map은 Collection의 자손X
ex)
Map map = new HashMap();
...
Iterator it = map.entrySet().iterator();
🎅 Arrays
- 배열을 다루기 편리한 메서드(static) 제공
- 배열의 출력 - toString()2. 배열의 복사 - copyOf(), copyOfRange()3. 배열 채우기 - fill(), setAll()4. 배열의 정렬과 검색 - sort(), binarySearch()5. 다차원 배열의 출력 - deepToString()6. 다차원 배열의 비교 - deepEquals() 7. 배열을 List로 변환 - asList(Object...a)
🎅 Comparator & Comparable
- 객체 정렬에 필요한 메서드(정렬기준 제공)를 정의한 인터페이스
Comparable - 기본 정렬기준을 구현하는데 사용
Comparator - 기본 정렬기준 외에 다른 기준으로 정렬하고자 할때 사용
public interface Comparator {
int compare(Object o1, Object o2); // o1, o2 두 객체를 비교
boolean equals(Object obj); // equals를 오버라이딩하라는 뜻
}
public interface Comparable{
int compareTo(Object o); // 주어진 객체(o)를 자신과 비교
}
같으면 0, 오른쪽이 크면 음수(-), 작으면 양수(+)
🤶 출처
자바의 정석 책 & 유튜브
Author And Source
이 문제에 관하여(21.01.15-38일차), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@ham6482/21.01.15-38일차-3a3nh0dh저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)