Ero Luettelon Ja Joukon Välillä

Sisällysluettelo:

Ero Luettelon Ja Joukon Välillä
Ero Luettelon Ja Joukon Välillä

Video: Ero Luettelon Ja Joukon Välillä

Video: Ero Luettelon Ja Joukon Välillä
Video: Tule tekemään saunatulevaisuutta -webinaari 9.6.2021 2024, Huhtikuu
Anonim

Tärkein ero - Lista vs. asetettu

Useimmat ohjelmointikielet käyttävät matriiseja samantyyppisten tietojen tallentamiseen. Yksi matriisien merkittävä haittapuoli on, että kun taulukon kokoa on ilmoitettu, sitä ei voida muuttaa. Jos ohjelmoija haluaa tallentaa matriisin koon ylittävät arvot, hänen tulisi luoda uusi taulukko ja kopioida olemassa olevat elementit uuteen ryhmään. Näissä tilanteissa voidaan käyttää kokoelmia. Kokoelmien tuella on mahdollista lisätä elementtejä, poistaa elementtejä ja monia muita toimintoja. Ohjelmointikielillä, kuten Java, on saatavana erityyppisiä kokoelmia. Lista ja Sarja ovat kokoelmahierarkian rajapintoja. Muiden rajapintojen perusrajapinta on Collection. Tärkein ero luettelon ja joukon välillä on se, että luettelo tukee saman elementin tallentamista useita kertoja, kun taas sarja ei tue saman elementin tallentamista useita kertoja. Siksi,a Sarja ei salli kopiointia.

SISÄLLYS

1. Yleiskatsaus ja avainerot

2. Mikä on luettelo

3. Mikä on asetettu

4. Luettelon ja joukon yhtäläisyydet

5. Rinnakkainen vertailu - luettelo vs asetettu taulukkomuodossa

6. Yhteenveto

Mikä on lista?

Luettelo on käyttöliittymä, joka laajentaa Collection-käyttöliittymää. Collection-käyttöliittymässä on useita menetelmiä. Lisää-menetelmä auttaa lisäämään elementin. 'Poista menetelmä' on poistaa elementti. Useiden elementtien lisäämiseen on 'addAll method', kun taas elementtien poistamiseen kokoelmasta 'removeAll method'. Sisältää-menetelmä auttaa selvittämään, onko tietyn objektin luettelossa vai ei. Sisältää 'kaikki' on selvittää, onko joukko esineitä kokoelmassa. Iteraattorimenetelmää käytetään luettelon kohteiden selaamiseen. Kun luettelo laajentaa kokoelmaa, kaikki keräystavat kuuluvat luetteloon. Luettelossa on muita menetelmiä kuin get and set. Ohjelmoija voi saada arvon tietystä indeksistä get-menetelmällä. Ohjelmoija voi asettaa arvon tietylle hakemistolle käyttämällä asetettua menetelmää.'IndexOf' käytetään etsimään elementin hakemisto.

Luettelossa toiminnot voidaan suorittaa sijainnin mukaan. Ohjelmoija voi tarjota indeksiin lisättävän tietoelementin. Joten se lisätään tiettyyn indeksiin. Jos ohjelmoija ei anna hakemistoa, elementti lisätään luettelon loppuun. Se ylläpitää myös lisättyä järjestystä. Jos elementti 1 lisätään ja sitten elementti2 lisätään, elementti1 on ennen elementtiä2.

Ero luettelon ja joukon välillä
Ero luettelon ja joukon välillä

Kuva 01: Luettelo ja sarja

ArrayList, LinkedList, Vector ovat joitain luokkia, jotka toteuttavat Listin. ArrayList-elementissä pääsy elementtiin on nopeaa, mutta lisääminen ja poistaminen on matalampaa. ArrayList ei ole langankestävä. Saman ArrayListin käyttö useista säikeistä ei välttämättä anna samaa tulosta. LinkedListissä elementit linkitetään sekä taaksepäin että eteenpäin. Elementtien lisääminen ja poistaminen LinkedList-sovelluksen avulla on nopeampi kuin ArrayList. LinkedList toteuttaa molemmat luettelon ja jonon. Vektori on samanlainen kuin ArrayList, mutta se on turvallinen kulutuspintaan, koska kaikki menetelmät ovat synkronoituja.

Mikä on asetettu?

Set on käyttöliittymä, joka laajentaa Collection-käyttöliittymää. Kun Set-käyttöliittymä laajentaa kokoelmaa, kaikki keräystavat kuuluvat myös Setiin. Sarja ei tue päällekkäisyyksiä. Siksi ohjelmoija ei voi tallentaa samaa elementtiä kahdesti. Se ylläpitää ainutlaatuista joukkoa elementtejä. SortedSet-liitäntä laajentaa Set-käyttöliittymää. SortedSet ylläpitää elementit järjestyksessä. NavigableSet-käyttöliittymä laajentaa SortedSet-asetusta. NavigableSet tarjoaa navigointimenetelmiä, kuten ala, lattia, katto jne.

HashSet, LinkedHashSet ja TreeSet ovat joitain luokkia, jotka toteuttavat Set-käyttöliittymän. HashSet toteuttaa Set-käyttöliittymän. Se ei ylläpidä lisättyä järjestystä. Jos arvot lisätään a, x, b, se voi tallentaa, x, a, b. LinkedSet ylläpitää lisättyä järjestystä. Jos elementit lisätään järjestyksessä a, x, b, tallennusjärjestys on a, x, b. TreeSet toteuttaa Setin ja NavigableSetin. Se ei säilytä lisäysjärjestystä, mutta tallentaa elementit lajiteltuun järjestykseen. Jos lisätty järjestys on a, c, b, elementit tallennetaan a, b, c. Kaikissa HashSetissä, LinkedHashSetissä ja TreeSetissä ei ole päällekkäisiä elementtejä.

Mitkä ovat luettelon ja joukon yhtäläisyydet?

  • Sekä List- että Set-rajapinnat laajentavat Collection-rajapintaa.
  • Sekä List- että Set-tukitoiminnot, kuten elementtien lisääminen, poistaminen.

Mikä on ero luettelon ja joukon välillä?

Lista vs Aseta

List Interface on kokoelman aliliitäntä, joka sisältää menetelmiä sellaisten toimintojen suorittamiseksi kuin lisäys, poisto indeksin perusteella. Set Interface on kokoelman aliliitäntä, joka sisältää menetelmiä toimintojen suorittamiseksi, kuten elementtien lisääminen, poistaminen, samalla kun säilytetään ainutlaatuiset elementit.
Luokat
ArrayList, Vector ja LinkedList ovat luokkia, jotka toteuttavat List-käyttöliittymän. HashSet, LinkedHashSet ja TreeSet ovat luokkia, jotka toteuttavat Set-käyttöliittymän.
Elementin kopiointi
Lista tukee päällekkäisiä elementtejä. Sarja ei tue elementtien päällekkäisyyttä. Elementit ovat ainutlaatuisia.

Yhteenveto - Lista vs Aseta

Kokoelmia käytetään elementtien tallentamiseen dynaamisesti. Ohjelmointikielet, kuten Java, tarjoavat Collection-käyttöliittymän. List ja Set ovat kaksi käyttöliittymää, jotka kuuluvat Collection-käyttöliittymään. Molemmat käyttöliittymät laajentavat kokoelmaa. Tässä artikkelissa käsiteltiin eroa luettelon ja joukon välillä. Tärkein ero luettelon ja joukon välillä on se, että luettelo tukee saman elementin tallentamista useita kertoja, kun taas sarja ei tue saman elementin tallentamista useita kertoja. Sarja ylläpitää aina ainutlaatuisia elementtejä.

Suositeltava: