日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java 集合十问

發布時間:2025/5/22 java 120 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java 集合十问 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2019獨角獸企業重金招聘Python工程師標準>>>

?????1.Java的HashMap是如何工作的?

  HashMap是一個針對數據結構的鍵值,每個鍵都會有相應的值,關鍵是識別這樣的值。

  HashMap 基于 hashing 原理,我們通過 put ()和 get ()方法儲存和獲取對象。當我們將鍵值對傳遞給 put ()方法時,它調用鍵對象的 hashCode ()方法來計算 hashcode,讓后找到 bucket 位置來儲存值對象。當獲取對象時,通過鍵對象的 equals ()方法找到正確的鍵值對,然后返回值對象。HashMap 使用 LinkedList 來解決碰撞問題,當發生碰撞了,對象將會儲存在 LinkedList 的下一個節點中。 HashMap 在每個 LinkedList 節點中儲存鍵值對對象。


  2.什么是快速失敗的故障安全迭代器?

  快速失敗的Java迭代器可能會引發ConcurrentModifcationException在底層集合迭代過程中被修改。故障安全作為發生在實例中的一個副本迭代是不會拋出任何異常的。快速失敗的故障安全范例定義了當遭遇故障時系統是如何反應的。例如,用于失敗的快速迭代器ArrayList和用于故障安全的迭代器ConcurrentHashMap。


  3.Java BlockingQueue是什么?

  Java BlockingQueue是一個并發集合util包的一部分。BlockingQueue隊列是一種支持操作,它等待元素變得可用時來檢索,同樣等待空間可用時來存儲元素。


  4.什么時候使用ConcurrentHashMap?

  在問題2中我們看到ConcurrentHashMap被作為故障安全迭代器的一個實例,它允許完整的并發檢索和更新。當有大量的并發更新時,ConcurrentHashMap此時可以被使用。這非常類似于Hashtable,但ConcurrentHashMap不鎖定整個表來提供并發,所以從這點上ConcurrentHashMap的性能似乎更好一些。所以當有大量更新時ConcurrentHashMap應該被使用。


  5.哪一個List實現了最快插入?

  LinkedList和ArrayList是另個不同變量列表的實現。ArrayList的優勢在于動態的增長數組,非常適合初始時總長度未知的情況下使用。LinkedList的優勢在于在中間位置插入和刪除操作,速度是最快的。

  LinkedList實現了List接口,允許null元素。此外LinkedList提供額外的get,remove,insert方法在LinkedList的首部或尾部。這些操作使LinkedList可被用作堆棧(stack),隊列(queue)或雙向隊列(deque)。

  ArrayList實現了可變大小的數組。它允許所有元素,包括null。 每個ArrayList實例都有一個容量(Capacity),即用于存儲元素的數組的大小。這個容量可隨著不斷添加新元素而自動增加,但是增長算法并沒有定義。當需要插入大量元素時,在插入前可以調用ensureCapacity方法來增加ArrayList的容量以提高插入效率。


  6.Iterator和ListIterator的區別

  ListIterator有add()方法,可以向List中添加對象,而Iterator不能。

  ListIterator和Iterator都有hasNext()和next()方法,可以實現順序向后遍歷,但是ListIterator有hasPrevious()和previous()方法,可以實現逆向(順序向前)遍歷。Iterator就不可以。

  ListIterator可以定位當前的索引位置,nextIndex()和previousIndex()可以實現。Iterator沒有此功能。

  都可實現刪除對象,但是ListIterator可以實現對象的修改,set()方法可以實現。Iierator僅能遍歷,不能修改。


  7.什么是CopyOnWriteArrayList,它與ArrayList有何不同?

  CopyOnWriteArrayList是ArrayList的一個線程安全的變體,其中所有可變操作(add、set等等)都是通過對底層數組進行一次新的復制來實現的。相比較于ArrayList它的寫操作要慢一些,因為它需要實例的快照。

  CopyOnWriteArrayList中寫操作需要大面積復制數組,所以性能肯定很差,但是讀操作因為操作的對象和寫操作不是同一個對象,讀之間也不需要加鎖,讀和寫之間的同步處理只是在寫完后通過一個簡單的"="將引用指向新的數組對象上來,這個幾乎不需要時間,這樣讀操作就很快很安全,適合在多線程里使用,絕對不會發生ConcurrentModificationException ,因此CopyOnWriteArrayList適合使用在讀操作遠遠大于寫操作的場景里,比如緩存。


  8.迭代器和枚舉之間的區別

  如果面試官問這個問題,那么他的意圖一定是讓你區分Iterator不同于Enumeration的兩個方面:

  Iterator允許移除從底層集合的元素。

  Iterator的方法名是標準化的。


  9.Hashmap如何同步?

  當我們需要一個同步的HashMap時,有兩種選擇:

  使用Collections.synchronizedMap(..)來同步HashMap。

  使用ConcurrentHashMap的

  這兩個選項之間的首選是使用ConcurrentHashMap,這是因為我們不需要鎖定整個對象,以及通過ConcurrentHashMap分區地圖來獲得鎖。


  10.IdentityHashMap和HashMap的區別

  IdentityHashMap是Map接口的實現。不同于HashMap的,這里采用參考平等。

  在HashMap中如果兩個元素是相等的,則key1.equals(key2)

  在IdentityHashMap中如果兩個元素是相等的,則key1 == key2


轉載于:https://my.oschina.net/darionyaphet/blog/352237

總結

以上是生活随笔為你收集整理的Java 集合十问的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲精品在线不卡 | 日本不卡视频在线观看 | 国产剧情在线一区 | 天天综合入口 | 日本伦理片在线播放 | 欧美成人三级伦在线观看 | 亚洲另类天堂 | 国产99久久| 爱爱小视频免费看 | 91精品久久久久久粉嫩 | 91精品推荐| 自拍偷拍第八页 | 国产又大又粗又爽的毛片 | 日韩一区二区视频在线观看 | av在线不卡免费观看 | av网站久久 | 一级久久久久久久 | 国产v亚洲v天堂无码 | 一本—道久久a久久精品蜜桃 | 日韩a视频 | 91午夜剧场 | 日韩 国产 欧美 | 大地资源中文在线观看免费版 | 加勒比综合网 | 成人四色| 日韩中文字幕视频在线 | 91麻豆精品国产91久久久久久 | 久久久久久天堂 | 一级黄色片免费观看 | 日本免费www | 欧美性高潮视频 | 欧美日韩高清在线 | 国产性猛交普通话对白 | aa丁香综合激情 | 亚洲怡春院 | 调教一区二区三区 | 人人看人人射 | 人人草人人搞 | 亚洲一区二区三区三州 | 国产精品久久久久无码av色戒 | 天天操穴 | 黄色香港三级三级三级 | 国产精品一区二区三区在线播放 | 中文字幕无码乱码人妻日韩精品 | 1000部啪啪| 亚洲精品日韩欧美 | 男女啪啪网站 | 日韩精品在线免费观看 | 色综合色综合网色综合 | 免费毛片一区二区三区久久久 | 欧美精品亚洲精品日韩精品 | 欧美一级片 | 久久久久久久久久久久国产 | 日韩成人欧美 | 国产在线一区二区视频 | 午夜寂寞自拍 | 伊人久综合 | 欧美性插动态图 | 亚洲欧美精品一区 | 男女啪啪免费 | 亚洲淫 | 尤物视频在线观看视频 | 亚洲大成色 | 天堂在线成人 | 日韩少妇视频 | 成人午夜精品 | 在线观看sm | 91九色国产ts另类人妖 | 国产chinesehd天美传媒 | 51 吃瓜网 | 东京热无码av一区二区 | 老牛av一区二区 | 亚洲天堂av在线播放 | 麻豆传媒在线播放 | 激情伊人网| 另类二区 | 今天最新中文字幕mv高清 | 色爽爽爽| 日本成人免费 | av网站免费在线看 | 台湾综合色 | 日本一区中文字幕 | 91精品国产99 | 二色av | 亚洲成熟女性毛茸茸 | 99久久久国产精品无码网爆 | 一区二区不卡免费视频 | 美痴女~美人上司北岛玲 | 亚洲av区无码字幕中文色 | 91香蕉视频在线看 | 91华人在线 | 久久国产二区 | 欧美色图激情小说 | 和黑帮大佬的365 | 狠狠躁狠狠躁视频专区 | 女性裸体视频网站 | 日本老师巨大bbw丰满 | 日本黄网站色大片免费观看 | 成年人免费视频播放 |