HashMapi ja HashTable'i erinevus

Peamised erinevused: Arvutiteaduses viitab hashTable või hashMap andmestruktuurile, mis seob võtmed (nimed) väärtustega (atribuutidega). Java puhul on kahe olulise erinevuse vahel mõned olulised erinevused: HashTable on sünkroniseeritud ja HashMap on sünkroniseerimata. HashTable ei võimalda nullklahve. HashMap võimaldab siiski ühe null-võtme ja mis tahes arvu nullväärtusi.

HashMap ja hashTable on Java-kollektsiooni osad. Nad kasutavad objektide salvestamiseks võtmeväärtuse paare. Nad mõlemad jagavad mõningaid sarnasusi, näiteks nii java.util.Map-i liidese rakendamine kui ka mõlemad töötavad põhimõtte „hashing” alusel. Siiski, kui me viitame neile Java programmeerimiskeele kontekstis, on nende vahel palju erinevusi.

Väärtuse salvestamiseks ja allalaadimiseks kasutatakse klahvi hashTable. Selleks peab võti olema unikaalne. Tabelit, mida kasutatakse võtme- ja väärtuspaaride salvestamiseks, nimetatakse räsifunktsiooni tabelis. Võrdlustabel on moodustatud, kasutades võtmeid peitvat algoritmi. Seda räsifunktsiooni kasutatakse numbrite määramiseks sisendandmetele ja seejärel salvestatakse andmed massiindeksina, mis vastab arvutatud või hinnatud numbrile.

Nagu hashTable, töötab hashMap samadel põhimõtetel. Seda võib pidada kaardiliidese hash-tabelipõhiseks rakenduseks. Siiski erineb see mõnest punktist hashTable'ist. HashMap on sünkroniseerimata, samas kui hashTable on sünkroniseeritud. Sünkroniseerimine tähendab, et tahkete osakeste ajal on ainult üks lõng tabeli muutmiseks võimeline. Seega peab hashTable-i värskendustoimingu tegemiseks lauale olema lukk. Selleks ajaks peavad teised niidid ootama. Pärast avamist võivad teised niidid jätkuda ja töötada lauale. Teine oluline erinevus nende kahe vahel on see, et hashTable ei võimalda nullklahvi. Kuid hashMap võimaldab ühe null-võtme ja mis tahes arvu nullväärtusi.

HashMapi ja HashTable'i võrdlus:

HashMap

HashTable

Sünkroonimine

See on sünkroniseerimata

See on sünkroonitud (lõime ohutu)

Null väärtused

See lubab nullväärtusi kui võtit ja väärtust

See ei võimalda tühikuid

Sissejuhatus javas

Java versioon 1.2

Java arenduskomplekti esimene versioon

Toimivus

Võrreldes parem

Võrreldes vaesed

Laiendab

See laiendab AbstractMap klassi

See laiendab sõnaraamatuklassi, mis on üsna vana

Nuppude sisestamine

Iteraatorit kasutatakse võtmete kordamiseks

Klahvide itereerimiseks kasutatakse loendamisliidest

Rakendused

Parem mitte-keermestatud rakenduste jaoks

Üldiselt on ohutu mitmetegurilistele rakendustele

Serialiseerimine

Ei ole serialiseeritud

Sarmeriseeritud

Alternatiiv

Mitme niidi keskkonnas võib kasutada samaaegset hashMapi

Sellist alternatiivi pole

Soovitatav

Seotud Artiklid

  • populaarsed võrdlused: Erinevus vihmausside ja leechi vahel

    Erinevus vihmausside ja leechi vahel

    Peamine erinevus: vihmaussid ja mädanikud on hermafrodiitid, kuid erinevad nende alaklassides; Vihmaussid kuuluvad alaklassi Oligochaeta alla, samas kui leesid kuuluvad Hirudinae alla. Vihmaussid ja leesid on kasulikud ussid, mis liigitatakse samasse klassi ja varjupaika, kuid nad kuuluvad erinevatesse alamklassidesse.
  • populaarsed võrdlused: Erinevus range ja jõulise vahel

    Erinevus range ja jõulise vahel

    Põhiline erinevus: range on määratletud kui viis, kuidas midagi rangelt või paindumatult teha. Tugev on ka põhjalik või täpne viis, samas kui jõuline määratleb energilise atribuudi, see tähendab keha või vaimu elavat ja tugevust. Mõlema konkreetse iseloomuga suhtumise, viisi või lähenemisviisi määratlemiseks kasutatakse rangeid ja jõulisi. Nende vaheline n
  • populaarsed võrdlused: Erinevus õpetamise ja indoktrinatsiooni vahel

    Erinevus õpetamise ja indoktrinatsiooni vahel

    Peamised erinevused: Õpetamine on seotud teabe, ideede või oskuste edastamisega, mida saab küsida või arutleda, ning õpetamisel õpetatavaid fakte toetavad tõendid, samas kui indoktrineerimine seisneb uskumuste edastamises, mida ei toeta tõendid ja vastuvõtja peaks seda aktsepteerima nii, nagu seda on õpetatud ilma igasuguse väite või küsitluseta. Õpetamine o
  • populaarsed võrdlused: Erinevus LG Optimus L7 II Dual ja Nokia Lumia 720 vahel

    Erinevus LG Optimus L7 II Dual ja Nokia Lumia 720 vahel

    Oluline erinevus: LG Optimus L7 II Dual on LG keskel asuv telefon. Telefon on kahekordne SIM-telefon. Seadmel on 4, 3-tolline IPS LCD-ekraan, mahtuvuslik puuteekraan resolutsiooniga 480 x 800 pikslit. See töötab Android v 4.1.2 (JellyBean), mida toetab 1, 0 GHz Dual-Core Qualcomm MSM8225 Snapdragon protsessor ja 768 MB RAM.
  • populaarsed võrdlused: Erinevus kivide ja mineraalide vahel

    Erinevus kivide ja mineraalide vahel

    Peamised erinevused: kivimid moodustuvad mineraalidest või mineroididest, mis on tahkeks muutunud. Kivimit võib koosneda ühest või mitmest mineraalist koos. Mineraalid on homogeensed tahked ained, millel on korrapärased struktuurid ja mida leidub maakoores olevates kivimites, maagides ja mineraalide kogustes. Pea
  • populaarsed võrdlused: Erinevus Apple'i ja Maci vahel

    Erinevus Apple'i ja Maci vahel

    Peamised erinevused: Apple Inc oli varem tuntud kui Apple Computer Inc; see on kujundatud graafilise kasutajaliidese ümber. Apple'i süsteem jaguneb erinevate operatsioonisüsteemide vahel: Maci arvuti, iPod-muusikapleier, iPhone nutitelefon ja iPad tahvelarvuti. Mac, lühike Macintosh, on Apple'i poolt loodud, arendatud ja turustatav kaubamärk. Sed
  • populaarsed võrdlused: Kõva koopia ja pehme koopia erinevus

    Kõva koopia ja pehme koopia erinevus

    Peamised erinevused: paberkandjal on paberil trükitud digitaalse dokumendi fail, samas kui pehme koopia on trükitud elektrooniline dokumendifail, mis on digitaalses vormis nagu personaalarvutites, pliiatsi draivides, DVD-des jne. Andmed ja teave on õppimise ja teadmiste valdkonnas väga olulised. Enamik aega, teavet või andmeid tuleb jagada või levitada. Palj
  • populaarsed võrdlused: Tigri ja Leopardi vaheline erinevus

    Tigri ja Leopardi vaheline erinevus

    Peamised erinevused : Tigeri ja Leopardi peamine erinevus on see, et Tiger on kassi perekonna suurim liige, samas kui Leopard on kassi väikseim liige. Tiigritel on suur lihaseline keha, millel on võimas esijalg, mida kasutatakse jahipidamiseks ja ronimiseks. Teisest küljest on leopardid ka suured ja lihaselised, kuid neil on lühikesed jalad, pikk keha ja suur kolju. Ne
  • populaarsed võrdlused: Erinevus lbs ja nael

    Erinevus lbs ja nael

    Peamised erinevused: nael ja lbs on sama asi, millel on sama tähendus, lihtsalt kirjutatud erinevalt; kui nael on mõõtühik, siis lbs. on lühend ja ametlik mõiste, mida kasutatakse naela märkimiseks. Nael ja lbs on üks ja sama; kui nael on mõõtühik, siis lbs. on lühend ja ametlik mõiste, mida kasutatakse naela märkimiseks. Nael on mõõt

Toimetaja Valik

Baromeetrilise rõhu ja atmosfäärirõhu erinevus

Peamised erinevused: Atmosfäärirõhk on jõud, mis on mõjutatud pinnast õhu koguse poolt Maa atmosfääris. Baromeeter mõõdab õhurõhku, mis on tavalisel juhul atmosfäärirõhu sünonüüm. Üks füüsika põhiseadusi on see, et kõigil peab olema mass, olenemata sellest, kui väike. Kui sellel on mass, siis peab gravitatsioon sellele reageerima ja seega peab ka kaal olema. Kaal ei ole midagi ena