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

java中HashSet的特點(diǎn)及實(shí)例用法

 更新時(shí)間:2021年04月08日 08:36:16   作者:小妮淺淺  
在本篇文章里小編給大家整理的是一篇關(guān)于java中HashSet的特點(diǎn)及實(shí)例用法,有興趣的朋友們可以學(xué)習(xí)下。

1、HashSet和TreeSet區(qū)別

HashSet底層使用Hash表。

確保元素唯一性的原理:判斷元素的hashCode值是否相同。如果是一樣的話,會(huì)繼續(xù)判斷元素的equals方法是否是true。

TreeSet底層采用紅黑樹(shù)。

確保元素的唯一性是通過(guò)Comparable或Comparator接口實(shí)現(xiàn)的。

2、HashSet和HashMap區(qū)別

事實(shí)上,HashSet的底層實(shí)現(xiàn)還是HashMap,只是它只使用了Key,具體如下:

(1)在HashSet的add方法的底層,使用HashMap的put方法將key=e,value=PRESENT構(gòu)建成key-value鍵值對(duì),當(dāng)e存在于HashMap的key中時(shí),value將覆蓋原來(lái)的value,但key保持不變,因此,如果在HashSet中添加了一個(gè)已經(jīng)存在的e元素,新添加的元素就不會(huì)存在于HashMap中,因此這就滿足了HashSet中元素不會(huì)重復(fù)的特性。

(2)HashSet的contains方法使用HashMap得到containsKey方法。

知識(shí)點(diǎn)擴(kuò)展:

HashSet 中的元素實(shí)際上是對(duì)象,一些常見(jiàn)的基本類型可以使用它的包裝類。

基本類型 引用類型
boolean Boolean
byte Byte
short Short
int Integer
long Long
float Float
double Double
char Character

HashSet 類位于 java.util 包中,使用前需要引入它,語(yǔ)法格式如下:

import java.util.HashSet; // 引入 HashSet 類

以下實(shí)例我們創(chuàng)建一個(gè) HashSet 對(duì)象 sites,用于保存字符串元素:

HashSet<String> sites = new HashSet<String>();

到此這篇關(guān)于java中HashSet的特點(diǎn)及實(shí)例用法的文章就介紹到這了,更多相關(guān)java中HashSet的使用特點(diǎn)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • fastjson 使用方法詳細(xì)介紹

    fastjson 使用方法詳細(xì)介紹

    Fastjson是一個(gè)Java語(yǔ)言編寫的JSON處理器,由阿里巴巴公司開(kāi)發(fā)。接下來(lái)通過(guò)本文給大家分享fastjson 使用方法詳細(xì)介紹,感興趣的朋友一起看看吧
    2017-11-11
  • java方法及this關(guān)鍵字原理分析詳解

    java方法及this關(guān)鍵字原理分析詳解

    本篇文章主要講解了對(duì)java方法和this關(guān)鍵字的用法及原理分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2021-10-10
  • 深入分析java文件路徑的詳解

    深入分析java文件路徑的詳解

    本篇文章是對(duì)java文件路徑進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • Java吃貨聯(lián)盟訂餐系統(tǒng)代碼實(shí)例

    Java吃貨聯(lián)盟訂餐系統(tǒng)代碼實(shí)例

    這篇文章主要介紹了Java訂餐系統(tǒng),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • 簡(jiǎn)介Java編程中的Object類

    簡(jiǎn)介Java編程中的Object類

    這篇文章主要介紹了簡(jiǎn)介Java編程中的Object類,是Java入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-09-09
  • Spring Boot 配置隨機(jī)數(shù)的技巧代碼詳解

    Spring Boot 配置隨機(jī)數(shù)的技巧代碼詳解

    這篇文章主要介紹了Spring Boot 配置隨機(jī)數(shù)技巧,spring boot 支持在系統(tǒng)加載的時(shí)候配置隨機(jī)數(shù),具體實(shí)例代碼大家參考下本文
    2018-05-05
  • Java中List轉(zhuǎn)Map的幾種常見(jiàn)方式與對(duì)比

    Java中List轉(zhuǎn)Map的幾種常見(jiàn)方式與對(duì)比

    JavaList轉(zhuǎn)Map是一個(gè)非常常用的技術(shù),對(duì)于Java開(kāi)發(fā)人員來(lái)講,掌握該技術(shù)可以幫助我們更加高效地操作List集合中的對(duì)象,這篇文章主要給大家介紹了關(guān)于Java中List轉(zhuǎn)Map的幾種常見(jiàn)方式與對(duì)比的相關(guān)資料,需要的朋友可以參考下
    2024-02-02
  • 詳解java如何正確使用volatile

    詳解java如何正確使用volatile

    這篇文章給大家分享了java如何正確使用volatile的相關(guān)知識(shí)點(diǎn)內(nèi)容,有興趣的朋友可以參考學(xué)習(xí)下。
    2018-07-07
  • Java 跳出遞歸循環(huán)問(wèn)題解決辦法

    Java 跳出遞歸循環(huán)問(wèn)題解決辦法

    這篇文章主要介紹了 Java 跳出遞歸循環(huán)問(wèn)題解決辦法的相關(guān)資料,需要的朋友可以參考下
    2017-07-07
  • 深入剖析java中String、StringBuffer、StringBuilder的區(qū)別

    深入剖析java中String、StringBuffer、StringBuilder的區(qū)別

    下面小編就為大家?guī)?lái)一篇深入剖析java中String、StringBuffer、StringBuilder的區(qū)別。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-05-05

最新評(píng)論