Collection(다수의 객체)를 다루기 위한 표준화 된 프로그래밍 방식Collection을 쉽고 편리하게 다룰 수 있는 다양한 클래스를 제공(저장, 삭제, 검색, 정렬)java.util 패키지에 포함, JDK 1.2 부터 제공다수의 데이터를 저장할 수 있는 클래스
ArrayList는 기존의 Vector를 개선한 것으로 구현원리와 기능적으로 동일ArrayList와 달리 Vector는 자체적으로 동기화처리가 되어있다.List 인터페이스를 구현하므로, 저장순서가 유지되고, 중복을 허용한다.데이터의 저장공간으로 배열을 사용한다. (배열
먼저 배열의 장단점을 알아보자장점 : 배열은 구조가 간단하고 데이터를 읽는데 걸리는 시간(접근시간, access time)이 짧다.단점 1 : 크기를 변경하기가 어렵다.크기를 변경해야 하는 경우 새로운 배열을 생성 후 데이터를 복사해야함.더 큰 배열 생성 2. 복사
스택 : LIFO 구조, 마지막에 저장된 것을 제일 먼저 꺼내게 된다. (Last In First Out), 밑이 막힌 상자push : 저장pop : 추출스택을 구현하려면 배열, 링크드 리스트 모두 사용 가능하나배열이 가장 효율적이다.배열은 순차적 추가 삭제를 하기
컬렉션에 저장된 데이터를 접근(읽어오기)하는데 사용되는 인터페이스Enumeration은 Iterator의 구버전ListIterator는 Iterator의 접근성을 향상시킨 것 (단반향 -> 양방향)왜 사용하는가? 컬렉션에 저장된 요소들을 읽어오는 방법을 표준화한 것
배열의 출력 - toString()배열의 복사 - copyOf(), copyOfRange() // 새로운 배열 생성해서 반환배열 채우기 - fill(), setAll()배열의 정렬과 검색 - sort(), binarySearch()binarySearch() 이진탐색은
객체 정렬에 필요한 메서드(정렬기준 제공)를 정의한 인터페이스Comparable 기본(default) 정렬 기준을 구현하는데 사용.Comparator 기본 정렬기준 외에 다른 기준으로 정렬하고자할 때 사용예시로 Integer Class에 구현된 compareTo() 메
List : 순서 O, 중복 OSet 인터페이스를 구현한 클래스 : HashSet, SortedSet, TreeSetHashSet Set 인터페이스를 구현한 대표적인 클래스순서를 유지하려면, LinkedHashSet 클래스를 사용하면 된다.TreeSet범위 검색과 정렬
이진 탐색 트리(binary search tree)로 구현, 범위 탐색과 정렬에 유리.이진 트리는 모든 노드가 최대 2개의 하위 노드를 갖음최초의 요소를 Root라고 한다.이진 트리란 각 노드가 부모자식 관계로 연결되어 있는걸 뜻함각 요소(node)가 나무(tree)형
Map 인터페이스를 구현, 데이터를 키와 값의 쌍으로 저장Map인터페이스를 구현한 대표적인 컬렉션 클래스순서를 유지하려면, LinkedHashMap클래스를 사용하면 된다.범위 검색과 정렬에 유리한 컬렉션 클래스HashMap보다 데이터 추가, 삭제에 시간이 더 걸림 (비
컬렉션 채우기, 복사, 정렬, 검색 - fill(), copy(), sort(), binarySearch() 등컬렉션의 동기화 - synchronizedXXX(객체) Collection List Set Map SortedSet SortedMap과 같은 클래스 넣어 사용