1. <nobr id="easjo"><address id="easjo"></address></nobr>

      <track id="easjo"><source id="easjo"></source></track>
      1. 
        

      2. <bdo id="easjo"><optgroup id="easjo"></optgroup></bdo>
      3. <track id="easjo"><source id="easjo"><em id="easjo"></em></source></track><option id="easjo"><span id="easjo"><em id="easjo"></em></span></option>
          貴州做網站公司
          貴州做網站公司~專業!靠譜!
          10年網站模板開發經驗,熟悉國內外開源網站程序,包括DEDECMS,WordPress,ZBlog,Discuz! 等網站程序,可為您提供網站建設,網站克隆,仿站,網頁設計,網站制作,網站推廣優化等服務。我們專注高端營銷型網站,企業官網,集團官網,自適應網站,手機網站,網絡營銷,網站優化,網站服務器環境搭建以及托管運維等。為客戶提供一站式網站解決方案?。?!

          list和set的區別(redis中set和list的區別有哪些)

          來源:互聯網轉載 時間:2024-05-13 17:25:56

          list和set的區別:

          1、List和Set都是接口繼承于Collection接口。

          2、最大的不同就是List是可以重復的。而Set是不能重復的。(注意:元素雖然無放入順序,但是元素在set 中的位置是有該元素的3、HashCode決定的,其位置其實是固定的)

          3、List接口有三個實現類:LinkedList,ArrayList,Vector ,Set接口有兩個實現類:HashSet(底層由HashMap實現),LinkedHashSet

          4、List適合經常追加數據,插入,刪除數據。但隨機取數效率比較低。

          5、Set適合經常地隨機儲存,插入,刪除。但是在遍歷時效率比較低。

          Set對每個對象只接受一次,并使用自己內部的排序方法(通常,你只關心某個元素是否屬于Set,而不關心它的順序--否則應該使用List)。Map同樣對每個元素保存一份,但這是基于"鍵"的,Map也有內置的排序,因而不關心元素添加的順序。如果添加元素的順序對你很重要,應該使用 LinkedHashSet或者LinkedHashMap.

          總結:List有順序有重復沒有排序,set無重復有排序,map的key也和set一樣。如果想跟List一樣需要有插入元素的順序,請使用LinkedHashSet或者LinkedHashMap。

          List的功能方法

          實際上有兩種List: 一種是基本的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可以當作堆棧、隊列和雙向隊列使用。

          For example:

          ArrayList與迭代器的使用

                          List<Integer> list = new ArrayList<>();for (int i = 0; i < 10; i++) {list.add(i);}Iterator<Integer> iterator = list.iterator();while (iterator.hasNext()) {int i = iterator.next();System.out.println("iterator==" + i);}for(Integer i: list) {System.out.println("i=="+ i);}                ListIterator<Integer> listIterator = list.listIterator();while (listIterator.hasNext()) {int  j = listIterator.next();System.err.println("listIterator==" + j);}

          Set的功能方法

          Set : 存入Set的每個元素都必須是唯一的,因為Set不保存重復元素。加入Set的元素必須定義equals()方法以確保對象的唯一性。Set與Collection有完全一樣的接口。Set接口不保證維護元素的次序。

          HashSet : 為快速查找設計的Set。存入HashSet的對象必須定義hashCode()。

          TreeSet : 保存次序的Set, 底層為樹結構。使用它可以從Set中提取有序的序列。

          LinkedHashSet : 具有HashSet的查詢速度,且內部使用鏈表維護元素的順序(插入的次序)。于是在使用迭代器遍歷Set時,結果會按元素插入的次序顯示。

          感謝各位的閱讀!關于redis中set和list的區別是什么就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

          c語言中正確的字符常量是用一對單引號將一個字符括起表示合法的字符常量。例如‘a’。數值包括整型、浮點型。整型可用十進制,八進制,十六進制。八進制前面要加0,后面...

          2022年天津專場考試原定于3月19日舉行,受疫情影響確定延期,但目前延期后的考試時間推遲。 符合報名條件的考生,須在規定時間登錄招考資訊網(www.zha...

          :喜歡聽,樂意看。指很受歡迎?!巴卣官Y料”喜聞樂見:[ xǐ wén lè jiàn ]詳細解釋1. 【解釋】:喜歡聽,樂意看。指很受歡迎。2. 【示例】:這是...

          10萬最聰明的存錢法有哪些?階梯存錢法和十二存單法有什么區別?隨小編一起來了解下吧1、階梯存錢法:驢可以把資金分為好幾份,每一份存進不一樣限期的定期存款里。以10萬為例,可以分為1萬、2萬、3萬、4萬四筆各自存一年銀行定期。用階梯存款的方式,益處是如果用戶臨時性需要用2萬,那只需把在其中2萬取出就可以,另外三部分存款的利息不會受到影響;2、十二存單法:每一個月存一筆一年期定期存款,持續存12個月,...

          春節假期剛過,無數生活在“北上廣”的有志青年像候鳥一樣紛紛返鄉。他們就像一群忘恩負義的孩子。在路上,上飛機前后,他們開始抱怨大都市的各種不好——房價,交通,空煤氣和壓力,當然還有各種情緒。幾年前,“逃離北上廣”是媒體關注的焦點,這意味著大城市越來越不適合居住,尤其是北京。然而這兩年的新聞是:原來“逃離北上廣”的人,現在都“逃”回來了。我曾經在一篇文章里寫過,對于一個充滿野心和抱負的年輕人來說,北京...

          什么是數理統計法?數理統計法的定義。數理統計法隨著研究的深入,分析師們將不再僅僅依靠簡單的比較和直觀的分析來尋找答案。數理統計和計量經濟學的理論和方法將會被越來越多地應用到行業分析中來。數理統計法這里介紹最常用的相關分析、一元線性回歸和時間數列。數理統計法相關分析主要用于探索兩個數量指標之間的依存關系,數理統計法比如行業產品的銷售總量和銷售價格之間的關系、行業發展速度與國民經濟發展速度之間的關系等...

          TOP
          国产初高中生视频在线观看|亚洲一区中文|久久亚洲欧美国产精品|黄色网站入口免费进人
          1. <nobr id="easjo"><address id="easjo"></address></nobr>

              <track id="easjo"><source id="easjo"></source></track>
              1. 
                

              2. <bdo id="easjo"><optgroup id="easjo"></optgroup></bdo>
              3. <track id="easjo"><source id="easjo"><em id="easjo"></em></source></track><option id="easjo"><span id="easjo"><em id="easjo"></em></span></option>