1. 컬렉션은 컬렉션 클래스의 최상위 인터페이스이며 직접 상속 인터페이스에는 목록 및 세트가 포함됩니다.
수집
|-목록 : 요소가 주문되고 요소를 반복 할 수 있습니다. 수집 시스템에는 인덱스가 있기 때문입니다.
|-arraylist : 기본 데이터 구조는 배열 구조를 사용합니다. 특징 : 쿼리 속도는 매우 빠릅니다. 그러나 추가와 삭제는 약간 느립니다. 스레드는 동기화되지 않았습니다.
|-linkedList : 기본 계층에 사용 된 링크 된 목록의 데이터 구조. 특징 : 추가 속도와 삭제 속도는 매우 빠르며 쿼리는 약간 느립니다. 스레드는 동기화되지 않았습니다.
|-벡터 : 기본 레이어는 배열 데이터 구조입니다. 스레드 동기화. ArrayList로 대체되었습니다. 낮은 효율로 인해.
|-세트 : 요소는 무질서하고 요소를 반복 할 수 없습니다.
목록 : 고유 한 방법. 각도 마커를 작동 할 수있는 모든 방법은이 시스템의 고유 한 방법입니다.
증가하다:
추가 (색인, 요소); addall (색인, 컬렉션);
삭제 : 제거 (index);
변경 : 세트 (인덱스, 요소);
확인하다:
get (index) : Subrist (From, to); ListIterator (); int indexof (OBJ) : 지정된 요소의 위치를 가져옵니다. Listiterator ListIterator ();
목록 컬렉션 고유 반복자. Listiterator는 반복자의 하위 인터페이스입니다.
반복하는 동안 컬렉션 객체의 방법에 의해 컬렉션의 요소를 조작 할 수 없습니다. 동시 변형 예외 예외가 발생하기 때문입니다.
따라서 반복자 일 때 반복자를 사용하여 작동 요소를 놓칠 수 있지만 반복자 메소드는 제한되어 있으며 요소를 판단하고 꺼내고 삭제할 수 있습니다.
추가, 수정 등과 같은 다른 작업을 원한다면 하위 인터페이스 인 Listiterator를 사용해야합니다. 이 인터페이스는 List Collection의 ListIterator 메소드를 통해서만 얻을 수 있습니다.
예제 코드 :
import java.util.*; 클래스 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 ( "다음 :"+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. 세트 ( "Java006"); } while (li.hasprevious ()) {sop ( "pre ::"+li.previous ()); } // sop ( "hasnext () :"+li.hasnext ()); // sop ( "hasprevious () :"+li.hasprevious ()); SOP (al); /* // 반복 과정에서 요소를 추가하거나 삭제할 준비를합니다. 반복자 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 Interface에 대한 정보를 편집 한 것입니다. 자바를 배우는 학생들을 도울 수 있기를 바랍니다.