Разлика између листе и скупа у Јави

Аутор: Laura McKinney
Датум Стварања: 2 Април 2021
Ажурирати Датум: 16 Може 2024
Anonim
The Great Gildersleeve: Gildy’s New Car / Leroy Has the Flu / Gildy Needs a Hobby
Видео: The Great Gildersleeve: Gildy’s New Car / Leroy Has the Flu / Gildy Needs a Hobby

Садржај


Интерфејс листа и подешавања проширује колекцију. Обоје одржава колекцију елемената или предмета. Али, главна разлика која их разликује једни од других је Листа збирки наредјених елемената, елементи се додају или уклањају или приступају уз помоћ варијабле индекса. Са друге стране, Сет је колекција објеката где колекција не дозвољава дупликат елемената у њој. Проучимо још неколико разлика између Листа и Постављање интерфејса уз помоћ упоредног графикона приказаног доле.

  1. Упоредни графикон
  2. Дефиниција
  3. Кључне разлике
  4. Закључак

Упоредни графикон

Основе за упоређивањеЛиста Комплет
ОсновниЛиста одржава редослед елемената сачуваних у листи.Сет не одржава нарочито редослед уметања, али, Линкед ХасхСет одржава редослед уметања.
УмножавањеЛиста може имати дупле елементе у себи.Метода адд () враћа лажну вредност ако покушате да уметнете дупликате елемената.
МетодеПоред метода дефинисаних у Збирци, Листа дефинише и неке своје методе.Сет не дефинише ниједан додатни метод.
Имплементација Листу имплементирају АрраиЛист, ЛинкедЛист, ЦопиОнВритеАрраиЛист, Вецтор, Стацк.Сет имплементирају ХасхСет, ЛинкедХасхСет, ЕнумСет, ТрееСет, ЦопиОнВритеАрраиСет.


Дефиниција листе

Листа интерфејса проширује збирку сучеља. Листа је наручена колекција елемената или предмета. За разлику од Постави, Листа може садржавати дупликате елемената. Поред метода дефинисаних у Колекцијској листи дефинира неке сопствене методе попут индекса гет () и сет () заснованог на индексу. Методе додавања () и уклањања () наслијеђене из збирке која додаје или уклања наведени елемент из индекса наведеног у аргументу методе. Листа је врста матрице чија величина расте како додајемо елементе листи.

Листа не дефинише ниједну методу за рад на распону индекса на листи. Дефинише методу сублисте () која враћа подлиста из оригиналне листе одређеног распона. Промјене које извршите на подпису такођер се појављују на изворном попису. Интерфејс листе имплементирају АрраиЛист, ЛинкедЛист, ЦопиОнВритеАрраиЛист, Вецтор, Стацк.

Дефиниција скупа

Интерфејс за подешавање проширује интерфејс колекције. Сет сучеље је колекција или група објеката која у њој не садржи ниједан дупликат. То значи да се две референце не могу односити на један објект или једна референца не може да се односи на два објекта или две референце које се односе на Нулл. Редослијед или редослијед елемента није важан Сет, али није да забрањује наручени скуп.


Интерфејс подешавања не дефинише ниједну методу поред методе дефинисане у Колекцији. Уместо тога, ограничава методе адд () и аддалл () за прикупљање да би додали било који дупликат у колекцији. Ако покушате да додате било који дупликат објекта у колекцију коришћењем методе додавања () колекције, он враћа лаж. У супротном, враћа се тачно. Сет интерфејса имплементирају ХасхСет, ЛинкедХасхСет, ЕнумСет, ТрееСет, ЦопиОнВритеАрраиСет.

  1. Слијед елемената / објекта у колекцији одржава се у Листу док, Сет не одржава редослијед елемената, али постоји изузетак који ЛинкедХасхСет одржава редослијед уметања.
  2. Листа може имати дупликат елемената јер идентификује било који елемент са својим индексом, али, Сет не дозвољава било какве дупликатне елементе јер нема било који елемент индекса који би могао идентификовати било који објект у колекцији.
  3. Листа дефинише неке методе самостално, поред метода дефинисаних у Збирци. С друге стране, Сет не дефинише ниједну сопствену методу, већ ограничава методе прикупљања да би додали дупликате елемената.
  4. Листу имплементирају интерфејси АрраиЛист, ЛинкедЛист, ЦопиОнВритеАрраиЛист, Вецтор, Стацк. С друге стране, Сет имплементирају ХасхСет, ЛинкедХасхСет, ЕнумСет, ТрееСет, ЦопиОнВритеАрраиСет интерфејсе.

Закључак:

Употреба интерфејса листе и скупа зависи од захтева. Ако је редослед објеката / елемената важан, тада морате користити Лист интерфејс. Ако вам нису потребни дупликати елемената у вашој колекцији, тада морате користити Сет интерфејс