Упоредиво наспрам компаратора: разлика и поређење

Упоредиви и компаратор су оба интерфејса Јаве, програмског језика високог нивоа који се користи за сортирање елемената колекције. Јава у основи пружа ова два различита интерфејса за сортирање објеката.

Постоје многе значајне разлике између оба интерфејса која стварају линију између њих на основу функције коју обављају.

Кључне Такеаваис

  1. Упоредиви је интерфејс за природно сређивање објеката; Цомпаратор је екстерни услужни програм за упоређивање објеката.
  2. Имплементација Цомпарабле захтева модификацију класе објеката који се пореде; Компаратор се може користити без модификације оригиналне класе.
  3. Цомпарабле намеће једну, подразумевану методу сортирања; Компаратор омогућава вишеструке, прилагодљиве опције сортирања.

Цомпарабле вс Цомпаратор

Цомпарабле је интерфејс у ​​Јави који дефинише цомпареТо метод и користи се за поређење природно уређених објеката. Упоређује објекте користећи референцу „ово“. Интерфејс компаратора сортира објекте узимајући у обзир њихове атрибуте. Он разматра објекте две различите класе.

Цомпарабле вс Цомпаратор

Упоредиви је интерфејс који је присутан у ланг пакету Јава језика, а његова сврха је да сортира елементе колекције користећи само један атрибут као што су старост, цена, ид, име итд.

Способан је да упореди себе са било којим другим објектом. Објект било ког типа, било листа или низ, може се сортирати.

Компаратор је интерфејс који је присутан у утил пакету Јава језика, а његова сврха је да сортира елементе колекције користећи више атрибута одједном.

То је посебна класа и екстерна је у односу на тип елемента који се пореди. Класа цоллецтионс обезбеђује други метод сортирања који прихвата компаратор као параметар.

Упоредна табела

Параметри поређењаУпоредивоКомпаратор
Врста сортирањаОбезбеђује једну секвенцу сортирања.Обезбеђује више секвенци сортирања.
Модификација класеМодификује стварну класу.То не мења стварну класу.
Локација пакетаПрисутан је у пакету јава—ланг.Присутан је у Јави. утил пакет.
МетодеИма метод цомпареТо().Има методу цомпаре().
Методе сортирањаЦоллецтионс.сорт(Лист) метода.Цоллецтионс.сорт(Листа,Цомпаратор) метода.

Шта је упоредиво?

Као што је горе објашњено, упоредиви је интерфејс Јава програмског језика који је присутан у пакету ланг и користи се за сортирање елемената колекције коришћењем само једног атрибута. Упоредиви интерфејс садржи само један метод који је цомпареТо().

Такође читајте:  Јава вс ЈаваСцрипт: разлика и поређење

Упоредиви објекат је способан да се пореди са другим објектима. Да би класа упоредила инстанце, неопходно је да класа имплементира Цомпарабле интерфејс.

Развијен је упоредив интерфејс за објекте са природним редоследом. Другим речима, ово значи да објекат који треба да се сортира мора имати редослед којим се сортира.

У логичком смислу, упоредиви интерфејс пореди „ову“ референцу са објектом који се помиње у методи. Када било која класа имплементира Цомпарабле интерфејс, објекат те класе може се сортирати коришћењем колекција. сорт() или низове. сорт() метода.

Објекти ће аутоматски бити сортирани природним редоследом који је дефинисан методом ЦомпареТо. Бројеви, низови и многи други типови се могу поредити. Стрингови се могу поредити коришћењем поређења по абецедном реду.

Различите уграђене класе Јаве имплементирају упоредиви интерфејс. Најважнија ствар коју треба имати на уму је да се упоредиви интерфејс може користити само за упоређивање објеката исте класе.

упоредив

Шта је компаратор?

Интерфејс за поређење програмског језика Јава је присутан у пакету утил и користи се за сортирање колекције на основу више атрибута одједном.

Компаратор је потпуно засебна класа. Програмери користе да креирају више класа које имплементирају интерфејс компаратора у сврху поређења различитих објеката.

Да бисте упоредили било који објекат колекције, први корак је креирање класе која имплементира метод компаратора, који у себи има метод цомпаре(). Следећи корак је да направите инстанцу те класе која имплементира интерфејс компаратора.

Последњи корак је позивање преоптерећене методе, која је метода сорт(), а затим додељивање листе и инстанце класе која је креирана у претходном кораку.

Интерфејс компаратора пореди два објекта различитих класа. Интерфејс Цомпаратор има две методе у себи, а то су цомпаре() и екуалс().

Такође читајте:  Мицрософт Формс вс ПоверАппс: разлика и поређење

Цомпаре() метода узима два различита објекта као свој параметар за поређење, а екуалс() метода одређује да ли је објекат Усвојено једнака компаратору који позива.

Метода екуалс() враћа логичку вредност као свој излаз. Тачно се враћа када објекат прође, а објекат који позива је оба компаратора, а ако није, онда се враћа нетачно.

Цомпаре() метода враћа целобројну вредност у свом излазу, што указује на већи од два прослеђена објекта.

упоређивач

Главне разлике између упоредивог и компаратора

  1. Интерфејс Цомпарабле обезбеђује једно сортирање низ у којој се колекција може сортирати кроз један елемент као што је ид, име или било који специфичан параметар, док интерфејс компаратора пружа вишеструку секвенцу сортирања у којој се колекција може сортирати кроз више елемената као што су ид, име или било који други параметар .
  2. Упоредиви интерфејс утиче на оригиналну класу јер модификује стварну класу, док, с друге стране, интерфејс компаратора ни на који начин не утиче на оригиналну класу, пошто стварна класа остаје иста без икаквих модификација.
  3. Упоредиви интерфејс је присутан у ланг пакету Јаве, док је интерфејс компаратор присутан у утил пакету Јаве.
  4. У упоредивом интерфејсу цомпареТо() се користи за сортирање елемената, док се у упоредном интерфејсу цомпаре() користи за сортирање елемената.
  5. Елементи листе упоредивих типова колекције могу се сортирати коришћењем колекција. Сорт (Листа) метод, док са друге стране, елементи листе типа компаратора колекције могу се сортирати коришћењем Цоллецтионс. Метода сортирања (Листа, Компаратор).
Разлика између Кс и И 2023 05 06Т084306.029
Референце
  1. https://dom-pubs.onlinelibrary.wiley.com/doi/abs/10.1111/j.1463-1326.2011.01545.x
  2. https://journals.asm.org/doi/abs/10.1128/aac.47.6.1824-1831.2003
  3. https://ieeexplore.ieee.org/abstract/document/6042862/

Последње ажурирање: 17. јул 2023

тачка 1
Један захтев?

Уложио сам толико труда да напишем овај пост на блогу да бих вам пружио вредност. Биће ми од велике помоћи ако размислите о томе да га поделите на друштвеним мрежама или са својим пријатељима/породицом. ДЕЉЕЊЕ ЈЕ ♥

5 мисли о “Упоредиви против компаратора: разлика и поређење”

  1. Кључне разлике које сте истакли између интерфејса Цомпарабле и Цомпаратор су веома информативне и корисне у разумевању разлика између та два. Ваше објашњење како интерфејс Цомпарабле аутоматски сортира објекте природним редоследом дефинисаним методом цомпареТо је посебно просветљујуће.

    одговорити
  2. Преглед интерфејса Цомпарабле и Цомпаратор и њихових посебних карактеристика је веома поучан. Ваше свеобухватно објашњење сврхе и употребе ових интерфејса ће несумњиво помоћи програмерима у доношењу информисаних дизајнерских одлука.

    одговорити

Оставите коментар

Желите да сачувате овај чланак за касније? Кликните на срце у доњем десном углу да бисте сачували у свом пољу за чланке!