자바 의 Set,List,Map 의 차이 점 에 대하 여 말씀 드 리 겠 습 니 다(1)

7191 단어 JavaListSet자바
학습 경험 에 대해 자바 의 Set,List,Map 의 차 이 를 논 하고 JAVA 의 집합 에 대한 이 해 는 배열 에 대한 것 입 니 다.
배열 은 크기 가 고정 되 어 있 고 같은 배열 은 같은 유형의 데이터(기본 형식/참조 형식)만 저장 할 수 있 으 며,JAVA 집합 은 작 동 수가 고정 되 지 않 은 데 이 터 를 저장 하고 저장 할 수 있 습 니 다. 모든 JAVA 집합 은 자바 util 가방 에 있 습 니 다! JAVA 집합 은 인용 형식의 데이터 만 저장 할 수 있 고 기본 데이터 형식 은 저장 할 수 없다.
JAVA 집합 은 주로 세 가지 유형 으로 나 뉜 다. 
Set(집합) 
목록(목록) 
지도(매 핑) 
Collection 인터페이스:Collection 은 가장 기본 적 인 집합 인터페이스 로 JAVA 집합(Set 와 List 만 포함)에 적용 되 는 일반적인 방법 을 밝 혔 다. Set 와 List 는 모두 Conllection,Map 을 계승 했다.
Collection 인터페이스 방법: 
boolean add(Object o)      :집합 에 대상 의 인용 을 추가 합 니 다. 
void clear():집합 에 있 는 모든 대상 을 삭제 합 니 다.즉,이 대상 의 인용 을 가지 고 있 지 않 습 니 다. 
boolean isEmpty()    :집합 이 비어 있 는 지 아 닌 지 를 판단 하 다. 
boolean contains(Object o):집합 에 특정 대상 의 인용 이 있 는 지 판단 합 니 다. 
Iterartor iterator()  :Iterator 대상 을 되 돌려 줍 니 다.집합 에 있 는 요 소 를 옮 겨 다 닐 수 있 습 니 다. 
boolean remove(Object o):집합 에서 대상 의 인용 을 삭제 합 니 다. 
int size()       :집합 중인 원소 의 수 를 되 돌려 줍 니 다. 
Object[] toArray()    : 집합 에 있 는 모든 요 소 를 포함 하 는 배열 을 되 돌려 줍 니 다. 
관련:Iterator()와 toArray()방법 은 모두 집합 에 사용 되 는 모든 요소 입 니 다.전 자 는 Iterator 대상 을 되 돌려 주 고 후 자 는 집합 에 있 는 모든 요 소 를 포함 하 는 배열 을 되 돌려 줍 니 다. 
Iterator 인 터 페 이 스 는 다음 과 같은 방법 을 설명 합 니 다. 
hasNext():집합 에 있 는 요소 가 옮 겨 다 니 는 지 여 부 를 판단 합 니 다.없 으 면 true 로 돌아 갑 니 다. 
next():다음 요 소 를 되 돌려 줍 니 다. 
reove():집합 에서 이전 next()방법 으로 되 돌아 온 요 소 를 삭제 합 니 다. 
세트(집합): Set 는 가장 간단 한 집합 이다.집합 중인 대상 은 특정한 방식 으로 정렬 하지 않 고 중복 대상 이 없다.Set 인 터 페 이 스 는 주로 두 가지 실현 유형 을 실현 했다.
HashSet:HashSet 류 는 해시 알고리즘 에 따라 집합 중의 대상 을 액세스 하고 액세스 속도 가 비교적 빠르다. 
4.567917.TreeSet:TreeSet 류 는 SortedSet 인 터 페 이 스 를 실현 하여 집합 중의 대상 을 정렬 할 수 있 습 니 다. 
set 의 용법:대상 의 인용 을 저장 하고 중복 대상 이 없습니다.
Set set=new HashSet();   String s1=new String("hello");   String s2=s1;   String s3=new String("world");   set.add(s1);   set.add(s2);   set.add(s3);   System.out.println(set.size());//             2。

Set 의 add()방법 은 대상 이 집합 에 저장 되 어 있 는 지 여 부 를 어떻게 판단 합 니까? 
boolean isExists=false;   Iterator iterator=set.iterator();   while(it.hasNext())           {   String oldStr=it.next();   if(newStr.equals(oldStr)){   isExists=true;   }   }

List(목록):List 의 특징 은 요 소 를 선형 으로 저장 하고 집합 에 중복 대상 을 저장 할 수 있다 는 것 이다. 
List 인터페이스 주요 구현 클래스:
  • Array List():길 이 를 배열 로 바 꿀 수 있 음 을 나타 낸다.요 소 를 무 작위 로 접근 할 수 있 으 며,ArrayList()에 요 소 를 삽입 하고 삭제 하 는 속도 가 느 립 니 다. 
  • LinkedList():실현 과정 에서 링크 데이터 구 조 를 사용한다.삽입 과 삭제 속도 가 빠 르 고 접근 속도 가 느 립 니 다. 

  • List 의 무 작위 접근 에 있어 서 특정한 위치 에 있 는 요 소 를 무 작위 로 검색 하 는 것 입 니 다.List 의 get(int index)방법 은 집합 에서 매개 변수 index 가 지정 한 색인 위치 대상 을 되 돌려 주 고 아래 표 시 는'0'부터 시작 합 니 다.가장 기본 적 인 두 가지 검색 집합 중의 모든 대상 을 모 으 는 방법: 
    1:for 순환 과 get()방법: 
    for(int i=0; i 
      

    2: (Iterator): 

     
      
    1. Iterator it=list.iterator();  

    2.  

    3. while(it.hashNext){  

    4.  

    5. System.out.println(it.next);  

    6.  


    Map( ): 

    Map , 。 Map Collection Map , , 。 

    Map : 

    1 , : 

    Object put(Object key, Object value):  

    Object remove(Object key): KEY  

    void putAll(Map t):   

    void clear():  

    2 : 

    Object get(Object key): key 。Map , , equals() false., 。 

    Conllections: 。Conllections JAVA  

    : 

    JAVA , , JAVA , , JDK , Map , , ,Conllections List /Map , 。 

    boolean containsKey(Object key): key 

    boolean containsValue(Object value): value 

    int size():  

    boolean isEmpty() :

    List , 。Set , ( , Set, -- List)。Map , " " ,Map , 。 , LinkedHashSet LinkedHashMap. 

    List  

    Lis: ArrayList, , LinkedList, , 。

    List: List : 。List Collection , List ( LinkedList 。) List ListIterator, List, List 。 

    ArrayList: List。 , List 。ListIterator ArrayList, 。 LinkedList 。 

    LinkedList : , List 。 。( ArrayList 。) :addFirst(), addLast(), getFirst(), getLast(), removeFirst()   removeLast(), ( ) LinkedList 、 。 

    Set  

    Set Collection , , List。 Set Collection, 。( : 。)Set ( ) 

    Set : Set , Set 。 Set equals() 。Set Collection 。Set 。 

    • HashSet: Set。 HashSet hashCode()。 

    • TreeSet: Set, 。 Set 。 

    • LinkedHashSet: HashSet , ( )。 Set , 。

    Map

    put(Object key, Object   value) “ ”( ) “ ” “ ”(key)( )。 get(Object   key) “ ” “ ”。 containsKey() containsValue() Map “ ” “ ”。 Java Map:HashMap, TreeMap, LinkedHashMap, WeakHashMap,   IdentityHashMap。 Map, 、 、 、 “ ” 。 

    Map 。 get() , ArrayList “ ” 。 HashMap 。HashMap , “ ”(hash   code), 。“ ” “ ” int , 。 Java , hashCode() Object 。 

    HashMap hashCode() 。 。 

    Map : “ ” , “ ” “ ”

    HashMap:Map 。 “ ” 。 capacity load factor, 。 

    LinkedHashMap: HashMap, , “ ” , (LRU) 。 HashMap 。 , 。 

    TreeMap :   。 “ ” “ ” , ( Comparabel Comparator )。TreeMap , 。TreeMap subMap() Map, 。 

    WeakHashMao : (weak key)Map,Map : 。 map “ ”, “ ” 。 

    IdentifyHashMap: : == equals() “ ” hash map。 。


    좋은 웹페이지 즐겨찾기