欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java集合類的組織結構和繼承、實現(xiàn)關系詳解

 更新時間:2017年11月02日 09:38:44   作者:lashou  
這篇文章主要介紹了Java集合類的組織結構和繼承、實現(xiàn)關系,具有一定的參考價值,感興趣的小伙伴們可以參考一下

Collection繼承、實現(xiàn)關系如下(說明(I)表示接口, (C)表示Java類,<--表示繼承,<<——表示實現(xiàn)):

(I)Iterable

          |<-- (I)Collection

                            |<-- (I)List

                                         |<<—— (C)ArrayList

                                         |<<—— (C)LinkedList

                                         |<<—— (C)Vector

                            |<-- (I)Set

                                         |<<—— (C)HashSet

                            |<-- (I)Queue [kju]

Map繼承、實現(xiàn)關系如下

Map

     |<<—— (C)HashMap

     |<<—— (C)HashTable

Iterable:

package java.lang;
import java.util.Iterator;
public interface Iterable<T> {
  Iterator<T> iterator();
}

Iterator:

package java.util;
public interface Iterator<E> {
  boolean hasNext();
  E next();
  void remove();
}

Collection:

package java.util;
public interface Collection<E> extends Iterable<E> {
  int size();
  boolean isEmpty();
  boolean contains(Object o);
  Iterator<E> iterator();
  Object[] toArray();
  <T> T[] toArray(T[] a);
  boolean add(E e);
  boolean remove(Object o);
  boolean containsAll(Collection<?> c);
  boolean addAll(Collection<? extends E> c);
  boolean removeAll(Collection<?> c);
  boolean retainAll(Collection<?> c);
  void clear();
  boolean equals(Object o);
  int hashCode();
}

 Map:

package java.util;
public interface Map<K,V> {  
  int size();
  boolean isEmpty();
  boolean containsKey(Object key);
  boolean containsValue(Object value); 
  V get(Object key); 
  V put(K key, V value); 
  V remove(Object key);
  void putAll(Map<? extends K, ? extends V> m);
  void clear();
  Set<K> keySet();
  Collection<V> values();
  Set<Map.Entry<K, V>> entrySet();
  interface Entry<K,V> {
    K getKey();
    V getValue();
    V setValue(V value);
    boolean equals(Object o);
    int hashCode();
  }
  boolean equals(Object o);
  int hashCode();
}

1、Collection和Map的區(qū)別

Collection和Map最大的區(qū)別就是Collection存儲的是一組對象;Map是以“鍵值對”的形式對對象進行的管理。

2、Iterable和Iterator

    Iterator是迭代器,Iterable是接口。很多類,像List、Set、HashMap不直接實現(xiàn)迭代器接口Iterator,而是去實現(xiàn)Iterable接口,是因為:

    Iterator的方法next()和hasNext()是依賴當前迭代位置的,直接實現(xiàn)Iterator,集合在不同方法間傳遞時,會包含一個當前迭代位置的指針;

    而Iterable每次調用都會返回一個從頭開始計數(shù)的迭代器。

3、Collection和Collections的區(qū)別

    Collection是一個集合接口。它提供了對集合對象進行進本操作的通用接口方法。

    Collections是一個工具類。內有多個對集合對象進行操作的靜態(tài)方法,不能實例化。

 以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • Maven依賴中scope的runtime和provied的區(qū)別及說明

    Maven依賴中scope的runtime和provied的區(qū)別及說明

    這篇文章主要介紹了Maven依賴中scope的runtime和provied的區(qū)別及說明,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • 關于Java變量的聲明、內存分配及初始化詳解

    關于Java變量的聲明、內存分配及初始化詳解

    下面小編就為大家?guī)硪黄P于Java變量的聲明、內存分配及初始化詳解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03
  • Java中的StampedLock實現(xiàn)原理詳解

    Java中的StampedLock實現(xiàn)原理詳解

    這篇文章主要介紹了Java中的StampedLock實現(xiàn)原理詳解,ReentrantReadWriteLock采用悲觀讀,第一個讀線程拿到鎖后,第二個/第三個讀線程可以拿到鎖,特別是在讀線程很多,寫線程很少時,需要的朋友可以參考下
    2024-01-01
  • java 判斷字符串中是否有重復字符的示例

    java 判斷字符串中是否有重復字符的示例

    今天小編就為大家分享一篇java 判斷字符串中是否有重復字符的示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07
  • SpringBoot加載配置6種方式分析

    SpringBoot加載配置6種方式分析

    這篇文章主要介紹了SpringBoot加載配置6種方式分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-10-10
  • 如何解決使用restTemplate進行feign調用new HttpEntity<>報錯問題

    如何解決使用restTemplate進行feign調用new HttpEntity<>報錯問題

    這篇文章主要介紹了如何解決使用restTemplate進行feign調用new HttpEntity<>報錯問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • pagehelper插件顯示total為-1或1的問題

    pagehelper插件顯示total為-1或1的問題

    這篇文章主要介紹了pagehelper插件顯示total為-1或1,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-09-09
  • 利用@Value注解為bean的屬性賦值方法總結

    利用@Value注解為bean的屬性賦值方法總結

    這篇文章主要介紹了利用@Value注解為bean的屬性賦值方法總結,文中有詳細的代碼示例,對學習@Value注解有一定的參考價值,需要的朋友可以參考下
    2023-05-05
  • idea搭建ssh框架的超詳細教程

    idea搭建ssh框架的超詳細教程

    這篇文章主要介紹了idea搭建ssh框架的超詳細教程,本文通過圖文實例代碼相結合給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-03-03
  • Java使用list集合remove需要注意的事項(使用示例)

    Java使用list集合remove需要注意的事項(使用示例)

    List集合的一個特點是它其中的元素是有序的,也就是說元素的下標是根據(jù)插入的順序來的,在刪除頭部或者中間的一個元素后,后面的元素下標會往前移動,本文給大家介紹Java使用list集合remove需要注意的事項,感興趣的朋友一起看看吧
    2022-01-01

最新評論