java의 Collection 인터페이스 실례 상세 설명
3520 단어 javaCollection인터페이스
Collection
|--List: 요소는 정렬되어 있으며 반복할 수 있습니다.이 집합 체계에 색인이 있기 때문이다.
|--ArrayList: 기본 데이터 구조는 배열 구조를 사용합니다.특징: 조회 속도가 매우 빠르다.근데 첨삭이 좀 느려요.스레드가 동기화되지 않습니다.
|--LinkedList: 베이스에서 사용되는 체인 테이블 데이터 구조입니다.특징: 삭제 속도가 빠르고 조회가 느리다.스레드가 동기화되지 않습니다.
|--Vector: 베이스는 배열 데이터 구조입니다.스레드 동기화.Array List로 대체되었습니다.효율이 낮기 때문이다.
|--Set: 요소는 무질서하며 반복할 수 없습니다.
List: 고유한 방법입니다.무릇 각표를 조작할 수 있는 방법은 모두 이 체계 특유의 방법이다.
증가:
add(index,element);
addAll(index,Collection);
삭제:remove(index);변경:set(index,element);
조사:
get(index):
subList(from,to);
listIterator();
int indexOf(obj): 。
ListIterator listIterator();
List 집합 특유의 교체기.ListIterator는 Iterator의 하위 인터페이스입니다.교체할 때, 집합 대상의 방법을 통해 집합 중의 요소를 조작할 수 없다.ConcurrentModificationException 이상이 발생하기 때문입니다.
따라서 교체기를 사용할 때 교체기의 조작원소만 사용할 수 있지만 Iterator 방법은 유한하기 때문에 원소를 판단하고 추출하고 삭제하는 조작만 할 수 있다.
추가, 수정 등 다른 작업을 하려면 하위 인터페이스, ListIterator를 사용해야 합니다.이 인터페이스는 List 집합의 listIterator 방법으로만 얻을 수 있습니다.
인스턴스 코드:
import java.util.*;
class ListDemo
{
public static void sop(Object obj)
{
System.out.println(obj);
}
public static void method()
{
ArrayList al = new ArrayList();
//
al.add("java01");
al.add("java02");
al.add("java03");
sop(" :"+al);
// 。
al.add(1,"java09");
// 。
//al.remove(2);
// 。
//al.set(2,"java007");
// 。
sop("get(1):"+al.get(1));
sop(al);
// 。
for(int x=0; x<al.size(); x++)
{
System.out.println("al("+x+")="+al.get(x));
}
Iterator it = al.iterator();
while(it.hasNext())
{
sop("next:"+it.next());
}
// indexOf 。
sop("index="+al.indexOf("java02"));
List sub = al.subList(1,3);
sop("sub="+sub);
}
public static void main(String[] args)
{
// 。
ArrayList al = new ArrayList();
//
al.add("java01");
al.add("java02");
al.add("java03");
sop(al);
ListIterator li = al.listIterator();
//sop("hasPrevious():"+li.hasPrevious());
while(li.hasNext())
{
Object obj = li.next();
if(obj.equals("java02"))
//li.add("java009");
li.set("java006");
}
while(li.hasPrevious())
{
sop("pre::"+li.previous());
}
//sop("hasNext():"+li.hasNext());
//sop("hasPrevious():"+li.hasPrevious());
sop(al);
/*
// , 。
Iterator it = al.iterator();
while(it.hasNext())
{
Object obj = it.next();
if(obj.equals("java02"))
//al.add("java008");
it.remove();// java02 。
sop("obj="+obj);
}
sop(al);
*/
}
}
이상은 JAVA Collection 인터페이스에 대한 자료 정리로 자바를 공부하는 학우들에게 도움이 되었으면 합니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
38. Java의 Leetcode 솔루션텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.