Kakšna je razlika med ArrayList in vektorjem - Razlika Med

Kakšna je razlika med ArrayList in vektorjem

The glavna razlika med ArrayList in Vector je, da ArrayList ni sinhroniziran in omogoča, da več niti deluje na ArrayList hkrati, medtem ko je Vector sinhroniziran in se izogiba več niti, ki delajo na vektorju hkrati.

Programski jeziki, kot je Java, podpirajo zbirke, kar omogoča shranjevanje več objektov kot eno samo enoto. Dve taki zbirki sta ArrayList in Vector. Pomagajo dinamično shranjevanje podatkov. ArrayList ni sinhroniziran, zaradi česar je ArrayList uspešnejši kot Vector. Po drugi strani pa je vektor sinhroniziran in vsebuje mnogo starih metod.

Pokrita ključna območja

1. Kaj je ArrayList
- Opredelitev, funkcionalnost
2. Kaj je Vector
- Opredelitev, funkcionalnost
3. Kakšna je razlika med ArrayList in vektorjem
- Primerjava ključnih razlik

Ključni pogoji

ArrayList, Vector


Kaj je ArrayList

ArrayList je podatkovna struktura, ki se izvaja z uporabo ArrayListClass. Ta razred ArrayList nadalje izvaja vmesnik List. To je boljša alternativa za matrike. Običajni nizi imajo določeno dolžino. Zato programer ne more dodati več elementov kot definirana velikost polja. Z uporabo ArrayList lahko dinamično spremenite velikost matrike. Z drugimi besedami, programer lahko dinamično dodaja ali odstranjuje elemente. Zato je fleksibilna podatkovna struktura. ArrayList vzdržuje naročeni element. Poleg tega so v razredu ArrayList na voljo vnaprej določene metode. Programer jih lahko uporabi v svojem programu.


Slika 1: Program ArrayList

Če pogledate zgornji program, je »sadje« predmet tipa ArrayList. Lahko shranjuje nizove. Metoda add pomaga pri vstavljanju elementov v ArrayList. Element v 2nd indeks ArrayList je grozdje. Metoda odstrani pomaga odstraniti grozdje iz ArrayList. Zdaj so na voljo samo trije elementi. “Itr” je iterator. Pomaga, da se ponovi skozi ArrayList. Nazadnje, zanka while natisne elemente, ki so na voljo v seznamu ArrayList.

Kaj je Vector

Vektor je podatkovna struktura, ki se izvaja z uporabo razreda Vector. Razred Vector izvaja vmesnik Seznam. Vektor vzdržuje zaporedje vstavljenega elementa. Sinhronizira se. Zato več niti ne more delati na vektorju hkrati. Običajno je učinkovitost dodajanja, brisanja in posodabljanja elementov v vektorju nižja.


Slika 2: Vektorski program

V zgornjem programu je "vec" objekt Vektorja, ki lahko shrani nizove. Metoda add doda nove elemente v vektor. Podobno metoda odstrani pomaga odstraniti element iz vektorja. Zato se pri prehodu "oranžne" na metodo odstrani ta posebni element odstrani iz vektorja. »En« je oštevilčenje, ki pomaga pri ponovitvi skozi vektor. Nazadnje, zanka while natisne elemente, ki so na voljo v vektorju.

Razlika med ArrayList in vektorjem

Opredelitev

ArrayList je nesinhronizirana podatkovna struktura, ki uporablja dinamično polje za shranjevanje elementov, medtem ko je vektor sinhronizirana podatkovna struktura, ki uporablja dinamično polje za shranjevanje elementov. To je torej bistvena razlika med ArrayList in Vector.

Izvedba

Uspešnost je velika razlika med ArrayList in Vector. ArrayList deluje hitreje kot Vector. Zato je njegova zmogljivost višja od vektorja.

Sinhronizacija

Največja razlika med ArrayList in Vector je sinhronizacija. ArrayList ni sinhroniziran, medtem ko je vektor sinhroniziran.

Prečkanje elementov

Medtem ko ArrayList uporablja vmesnik Iterator za prečkanje elementov, vektor uporablja vmesnik Iterator ali vmesnik Enumeration za prečkanje elementov. Zato je to še ena razlika med ArrayList in Vector.

Velikost polja

Poleg tega ArrayList poveča 50% trenutne velikosti niza, če število elementov preseže njegovo zmogljivost, medtem ko vektorji povečajo 100%, tj. Podvoji velikost polja, če skupno število elementov presega njegovo zmogljivost.

Zaključek

Tako ArrayList kot Vector omogočata dinamično shranjevanje elementov. Glavna razlika med ArrayList in Vector je v sinhronizaciji. ArrayList ni sinhroniziran in omogoča, da več nizov dela na njem hkrati, medtem ko je Vector sinhroniziran in se izogiba več niti, ki delajo na njem hkrati. ArrayList je torej hitrejši od vektorja.

Sklic:

1. “ArrayList v Javi - Javatpoint.” Www.javatpoint.com,