자바 데이터 구조 (9): Collection 서브 인터페이스: List 인터페이스
2. 상용 방법: (기억) 증가: add (Object obj) 삭제: remove (int index) / remove (Object obj) 변경: set (int index, Object ele) 검사: get (int index) 삽입: add (int index, Object ele) 길이: size () 옮 겨 다 니 기: ① Iterator 교체 기 방식 ② 순환 을 위 한 강화 ③ 일반적인 순환
3. 상용 실현 클래스:
|----Collection : ,
* |----List : 、 。 -->“ ” ,
* |----ArrayList: List ; , ; Object[] elementData
* |----LinkedList: 、 , ArrayList ;
* |----Vector: List ; , ; Object[] elementData
4. ( )
4.1 ArrayList :
* 2.1 jdk 7
* ArrayList list = new ArrayList();// 10 Object[] elementData
* list.add(123);//elementData[0] = new Integer(123);
* ...
* list.add(11);// elementData , 。
* , 1.5 , 。
*
* : :ArrayList list = new ArrayList(int capacity)
*
* 2.2 jdk 8 ArrayList :
* ArrayList list = new ArrayList();// Object[] elementData {}. 10
*
* list.add(123);// add() , 10 , 123 elementData[0]
* ...
* jdk 7 。
* 2.3 :jdk7 ArrayList , jdk8 ArrayList
* , , 。
*
4.2 LinkedList :
* LinkedList list = new LinkedList(); Node first last , null
* list.add(123);// 123 Node , Node 。
*
* ,Node : LinkedList
* private static class Node {
E item;
Node next;
Node prev;
Node(Node prev, E element, Node next) {
this.item = element;
this.next = next;
this.prev = prev;
}
}
4.3 Vector :
jdk7 jdk8 Vector() , 10 。
, 2 。
5. 저 장 된 요소 에 대한 요구: 추 가 된 대상, 소재 하 는 클래스 는 equals () 방법 [면접 문제] * 면접 문제: Array List, LinkedList, Vector 자의 공통점 과 차이 점? *같은: 세 가지 유형 은 모두 List 인 터 페 이 스 를 실현 하고 데 이 터 를 저장 하 는 특징 이 같 습 니 다. 저장 순서, 중복 가능 한 데이터 * 가 다 릅 니 다. (세 번 째 부분 + 네 번 째 부분 참조)
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.