자바 집합 클래스
Collection 소개 아래 Collection 의 일부 프레임 워 크 류 의 관계 도 를 살 펴 보 자Collection 은 하나의 인터페이스 이 고 주요 한 두 가지 가 List 와 Set 이다.List 와 Set 는 모두 인터페이스 로 Collection 에 계승 된다.List 는 질서 있 는 대기 열 입 니 다.List 에는 중복 되 는 요소 가 있 습 니 다.그리고 Set 는 수학 개념의 집합 으로 Set 에는 중복 요소 가 없습니다!List 와 Set 는 모두 각자 의 실현 류 를 가지 고 있다. 편 의 를 위해 우 리 는 AbstractCollection 추상 류 를 추상 화 했 고 Collection 중의 대부분 함 수 를 실현 했다.이렇게 하면 Collection 의 실현 류 에서 우 리 는 AbstractCollection 을 계승 하여 중복 인 코딩 을 줄 일 수 있다.AbstractList 와 AbstractSet 은 모두 AbstractCollection 에 계승 되 고 구체 적 인 List 실현 류 는 AbstractList 에 계승 되 며 Set 의 실현 류 는 AbstractSet 에 계승 된다. 또한 Collection 에는 iterator()함수 가 있 습 니 다.Iterator 인 터 페 이 스 를 되 돌려 주 는 역할 을 합 니 다.보통 우 리 는 Iterator 교체 기 를 통 해 집합 을 옮 겨 다 닌 다.ListIterator 는 List 인터페이스 특유 의 것 으로 List 인터페이스 에서 ListIterator()를 통 해 ListIterator 대상 을 되 돌려 줍 니 다. 다음은 각 인터페이스 와 추상 류 의 소 개 를 살 펴 보 자.그리고 실현 류 에 대해 자세히 알 아 보 자.Collection 의 정 의 는 다음 과 같다. 이것 은 인터페이스 로 고도 로 추상 화 된 집합 으로 집합 의 기본 적 인 작업 을 포함한다.추가,삭제,비우 기,옮 겨 다 니 기(읽 기),비어 있 는 지,크기 를 가 져 오 는 지,특정한 요 소 를 보호 하 는 지 등 을 포함한다.
Collection 인터페이스의 모든 하위 클래스(직접 하위 클래스 와 간접 하위 클래스)는 반드시 2 가지 구조 함 수 를 실현 해 야 한다.매개 변수 가 없 는 구조 함수 와 매개 변 수 는 Collection 의 구조 함수 이다.파 라 메 터 를 가 진 구조 함수 로 Collection 의 유형 을 바 꿀 수 있 습 니 다
public interface Collection<E> extends Iterable<E> {}
2 List 소개 List 의 정 의 는 다음 과 같다
// Collection API
abstract boolean add(E object)
abstract boolean addAll(Collection<? extends E> collection)
abstract void clear()
abstract boolean contains(Object object)
abstract boolean containsAll(Collection<?> collection)
abstract boolean equals(Object object)
abstract int hashCode()
abstract boolean isEmpty()
abstract Iterator<E> iterator()
abstract boolean remove(Object object)
abstract boolean removeAll(Collection<?> collection)
abstract boolean retainAll(Collection<?> collection)
abstract int size()
abstract <T> T[] toArray(T[] array)
abstract Object[] toArray()
List 는 Collection 에 계승 되 는 인터페이스,즉 List 는 집합 중의 하나 이다.List 는 질서 있 는 대기 열 입 니 다.List 의 모든 요 소 는 색인 이 있 습 니 다.첫 번 째 요소 의 색인 값 은 0 이 고,이후 요소 의 색인 값 은 순서대로+1 입 니 다.set 와 달리 List 에 서 는 중복 되 는 요 소 를 허용 합 니 다.List 의 공식 소 개 는 다음 과 같 습 니 다.A List is a collection which maintains an ordering for its elements.List 에 있 는 Every element has an index.Each element can thus be accessed by its index,with the first index being zero.일반적으로 Lists allow duplicate elements,as compared to Sets,where elements have to be unique. API 에 대해 서List 가 Collection 인터페이스 에 계승 되 었 으 니 Collection 의 모든 함수 인 터 페 이 스 를 자 연 스 럽 게 포함 합 니 다.List 는 질서 있 는 대기 열 이기 때문에 API 인터페이스 도 추가 로 있 습 니 다.주로'지정 한 위치의 요 소 를 추가,삭제,가 져 오기,수정 하기','List 의 하위 대기 열 가 져 오기'등 이 있 습 니 다
public interface List<E> extends Collection<E> {}
3.Set 프로필 Set 의 정 의 는 다음 과 같다
// Collection API
abstract boolean add(E object)
abstract boolean addAll(Collection<? extends E> collection)
abstract void clear()
abstract boolean contains(Object object)
abstract boolean containsAll(Collection<?> collection)
abstract boolean equals(Object object)
abstract int hashCode()
abstract boolean isEmpty()
abstract Iterator<E> iterator()
abstract boolean remove(Object object)
abstract boolean removeAll(Collection<?> collection)
abstract boolean retainAll(Collection<?> collection)
abstract int size()
abstract <T> T[] toArray(T[] array)
abstract Object[] toArray()
// Collection,List API:
abstract void add(int location, E object)
abstract boolean addAll(int location, Collection<? extends E> collection)
abstract E get(int location)
abstract int indexOf(Object object)
abstract int lastIndexOf(Object object)
abstract ListIterator<E> listIterator(int location)
abstract ListIterator<E> listIterator()
abstract E remove(int location)
abstract E set(int location, E object)
abstract List<E> subList(int start, int end)
Set 는 Collection 에 계승 되 는 인터페이스 이 고 Set 도 집합 중의 하나 이다.set 는 중복 요소 가 없 는 집합 입 니 다.API 에 대해 서Set 의 API 와 Collection 은 완전히 같다
public interface Set<E> extends Collection<E> {}
4 AbstractCollection AbstractCollection 의 정 의 는 다음 과 같다.Public abstract class AbstractCollection
// Set API
abstract boolean add(E object)
abstract boolean addAll(Collection<? extends E> collection)
abstract void clear()
abstract boolean contains(Object object)
abstract boolean containsAll(Collection<?> collection)
abstract boolean equals(Object object)
abstract int hashCode()
abstract boolean isEmpty()
abstract Iterator<E> iterator()
abstract boolean remove(Object object)
abstract boolean removeAll(Collection<?> collection)
abstract boolean retainAll(Collection<?> collection)
abstract int size()
abstract <T> T[] toArray(T[] array)
abstract Object[] toArray()
8 ListIterator ListIterator 의 정 의 는 다음 과 같다
public interface Iterator<E> {}
ListIterator 는 Iterator 에 계승 되 는 인터페이스 로 대기 열 교체 기 이다.편리 List 에 사용 되 며 앞/뒤로 옮 겨 다 닐 수 있 습 니 다.Iterator 에 비해 이전 요소 가 추가 되 었 는 지,이전 요소 가 져 왔 는 지 등 API 인 터 페 이 스 를 추가 합 니 다
// Iterator API
abstract boolean hasNext()
abstract E next()
abstract void remove()
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Spring 자동 조립 이해현재 이 클래스 는 @ Repository 표지 가 있 고 내부 에 @ Autowired 가 있 습 니 다. 이 클래스 가 구성 요소 에 스 캔 되면 spring 은 자동 으로 bean 을 생 성하 고 dbAcess...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.