Kakšna je razlika med seznamom in nizom - Razlika Med

Kakšna je razlika med seznamom in nizom

The glavna razlika med seznamom in nizom je to Seznam shranjuje podvojene vrednosti, medtem ko nastavitev Set ne shranjuje podvojenih vrednosti.

Programski jezik Java podpira zbirke. Seznam in niz pripadata hierarhiji zbiranja. Oba sta vmesnika, ki razširjata vmesnik zbirke. Ti vmesniki zagotavljajo metode, kot so dodajanje, odstranjevanje, brisanje, velikost, itd. Za izvajanje operacij zbirke.

Pokrita ključna območja

1. Kaj je seznam
- Opredelitev, funkcionalnost
2. Kaj je Set
- Opredelitev, funkcionalnost
3. Kakšna je razlika med seznamom in nizom
- Primerjava ključnih razlik

Ključni izraz

ArrayList, Zbirke, HashSet, Vmesnik, LinkedList, Seznam, Set, Vector


Kaj je seznam

Seznam je podrejeni vmesnik vmesnika zbirke. Zmožen je ohranjati elemente v vstavljenem vrstnem redu. Poleg tega lahko vsebuje tudi podvojene vrednosti. Razredi ArrayList, LinkedList in Vector izvajajo vmesnik List. Programerji lahko ustvarijo primerke vsakega na naslednji način.

Seznam list1 = novo ArrayList ();

Seznam list2 = novo LinkedList ();

Seznam list3 = novi vektor ();

Možno je tudi shranjevanje določenega tipa objektov s pomočjo generikov. Sintaksa je naslednja.

Seznam list = nov seznam ();

Obj se nanaša na vrsto objektov, ki jih lahko shrani seznam. Na primer,

Seznam list1 = nova ArrayList();

Seznam1 je ArrayList, ki shranjuje predmete tipa Integer. Isto teorijo lahko uporabimo tudi za druge vrste seznamov, kot sta LinkedList in Vector.

ArrayList ne zagotavlja varnosti niti. Zato lahko dostop do istega seznama ArrayList iz več niti povzroči nedoslednost v podatkih. V LinkedListu se lahko elementi med seboj povežejo v smeri naprej in nazaj. Poleg tega je Vector podoben ArrayList, vendar zagotavlja varnost nit.

Primer programa je naslednji.


Slika 1: Java program z ArrayList

Črke so predmet programa ArrayList. Metoda add pomaga pri vstavljanju elementov v ArrayList. Iterator () vrne iterator na začetek zbirke. Zanka while kliče metodo hasNext () v vsaki ponovitvi. To bo vrnilo true, dokler so v zbirki na voljo elementi. Znotraj zanke metoda next () pomaga pridobiti naslednji podatkovni element v zbirki. System.out.println prikaže element na konzoli.

Pri opazovanju rezultatov lahko vidimo, da ArrayList ohranja zaporedje vstavljenih podatkov. Poleg tega se dvakrat vstavi črka „m“. ArrayList vsebuje oba m. Zato seznam shranjuje podvojene vrednosti.

Kaj je Set

Set je podrejeni vmesnik vmesnika zbirke. Ne podpira podvojenih elementov. Zato ohranja edinstven sklop elementov. Razredi HashSet, LinkedHashSet in TreeSet uvajajo vmesnik Set. Programerji lahko ustvarijo primerke vsakega na naslednji način.

Nastavi set1 = novi HashSet ();

Nastavi set2 = novo LinkedHashSet ();

Set set3 = new TreeSet ();

Možno je tudi omogočiti shranjevanje določenih tipov objektov z uporabo generikov. Sintaksa je naslednja.

Set set = new Set ();

Obj se nanaša na vrsto objektov, ki jih niz lahko shrani.

Na primer,

Set set1 = novi HashSet();

Set1 je HashSet, ki hrani objekte tipa Integer. Isto teorijo lahko uporabimo tudi za druge tipe nizov, kot sta LinkedHashSet in TreeSet.

Razredi HashSet, LinkedHashSet in TreeSet uvajajo vmesnik Set. HashSet ne vzdržuje naročenih podatkov. LinkedHashSet ohranja zaporedje vstavljenih podatkov. Poleg tega TreeSet ne vzdržuje zaporedja vstavljenih podatkov, temveč elemente shranjuje na razvrščen način. Primer programa je naslednji.


Slika 2: Java program s programom HashSet

Črke so predmet programa HashSet. Metoda add pomaga pri vstavljanju elementov v HashSet. Ta program vsebuje tudi metode iterator (), hasNext () in naslednji () kot zgornji program.

Pri opazovanju rezultatov lahko vidimo, da HashSet ne vzdržuje zaporedja vstavljenih podatkov. Poleg tega se dvakrat vstavi črka „m“, ki pa vsebuje le en m. Zato Set ne shranjuje podvojenih vrednosti.

Razlika med seznamom in nizom

Opredelitev

Vmesnik seznama je vmesnik zbirke, ki vsebuje metode za izvajanje operacij, kot je vstavljanje in brisanje na podlagi indeksa. Medtem ko je Set Interface vmesnik zbirke, ki vsebuje metode za izvajanje operacij, kot so vstavljanje in brisanje elementov, medtem ko ohranja edinstvene elemente. To je torej bistvena razlika med seznamom in nizom.

Podvajanje

Glavna razlika med seznamom in nizom je, da seznam shranjuje podvojene vrednosti, medtem ko nastavitev Set ne shranjuje podvojenih vrednosti.

Razredi

ArrayList, LinkedList in Vector implementirajo vmesnik List, medtem ko HashSet, LinkedHashSet in TreeSet uvajajo vmesnik Set.

ListIterator

V ta namen je mogoče uporabiti Iterator ali ListIterator za prečkanje elementov na seznamu. Vendar pa ni mogoče uporabiti ListIterator za prečkanje elementov v nizu. Zato je to še ena razlika med seznamom in nizom.

Nične vrednosti

Poleg tega je še ena razlika med seznamom in nizom ničelne vrednosti. Seznam ima lahko veliko ničelnih vrednosti, medtem ko ima lahko Set samo eno vrednost nič.

Zaključek

Seznam in Set sta dva vmesnika v hierarhiji zbirke. Glavna razlika med seznamom in nizom je, da seznam shranjuje podvojene vrednosti, medtem ko nastavitev Set ne shranjuje podvojenih vrednosti. Z drugimi besedami, seznam ima lahko isti element večkrat, medtem ko niz vsebuje samo edinstvene elemente.

Sklic:

1. “Vmesnik s seznamom v Javi s primeri.” GeeksforGeeks, 26. november 2018,