Hvad er en Comparator Interface i Java?



En komparator i java bruges til at ordne objekterne i en brugerdefineret klasse. Lær alt om java Comparator interface og hvordan du kan implementere det.

Comparator er et af de mest nyttige såvel som forvirrende emner i Java. Nyttigt, da det giver sorteringsmetoder til objekter og forvirrende, da det lyder som i Java. Således bringer jeg dig denne artikel, hvor jeg vil rydde al tvivl omkring Comparator i Java.

Lad os komme igang.





Hvad er Comparator i Java?

Java Comparatorinterface bruges til at bestille genstande inde i en brugerdefineret klasse . Denne grænseflade er tilgængelig i java . nyttig pakke og inkluderer to vigtige metoder kendt som sammenligning (Objekt obj1, Objekt obj2) og lig (Objektelement).

Lad os nu forstå de forskellige metoder i Java Comparator:



Metoder til Java Comparator Interface

Der er to metoder til komparatorer i Java, nemlig:

MetoderBeskrivelse
sammenlign (Objekt obj1, Objekt obj 2)Sammenligner det første objekt med et andet
er lig med (Objekt obj)Sammenligner det aktuelle objekt med det angivne objekt

Nedenstående kode viser brugen af ​​begge metoder af Java Comparator.

er en kandidatgrad og en kandidatgrad

Eksempel på Java-komparator

// Medarbejderdata



pakke JavaComparator import java.util. * import java.lang. * import java.io. * klasse Medarbejder {int EmpID String navn, adresse offentlig medarbejder (int EmpID, String navn, String adresse) {this.EmpID = EmpID this.name = name this.address = address} public String toString () {return this.EmpID + '' + this.name + '' + this.address}} klasse Sortbyroll implementerer Comparator {public int compare (Medarbejder a, Medarbejder b) { returnere a.EmpID - b.EmpID}} klasse Sortbyname implementerer Comparator {public int compare (Medarbejder a, Medarbejder b) {returner a.name.compareTo (b.name)}} klasse Main {offentlig statisk ugyldig main (String [] args) {ArrayList Arr = ny ArrayList () Arr.add (ny medarbejder (1011, 'Rajesh', 'Bangalore')) Arr.add (ny medarbejder (1031, 'Ralph', 'Hyderabad')) Arr.add ( ny medarbejder (1201, 'Karan', 'Haryana')) System.out.println ('Usorterede data') til (int i = 0 i 

Produktion:

hvad er instans i python

Usorterede data
1011 Rajesh Bangalore
1031 Ralph Hyderabad
1201 Karan Haryana

Sorterede data efter medarbejder-id'er
1011 Rajesh Bangalore
1031 Ralph Hyderabad
1201 Karan Haryana

Sorterede data efter medarbejdernavn
1201 Karan Haryana
1011 Rajesh Bangalore
1031 Ralph Hyderabad

Lad os forstå den anden metode til Java Sammenlignelig, dvs. svarer til metode.

Java er lig med () eksempel:

pakke Er lig med offentlig klasse lig med Eksempel {offentlig statisk ugyldig hoved (String er lig med) {System.out.println (nye Eqls ('Harsha', 35, 12000). lig (nye Eqls ('Hari', 25,12000))) System. out.println (nye Eqls ('Karan', 44, 45000). ligestillinger (nye Eqls ('Karan', 44, 45000))) System.out.println (nye Eqls ('latha', 54, 60000). lig (nyt objekt ()))} statisk klasse Eqls {privat strengnavn privat int alder privat int Løn offentlig Eqls (strengnavn, int alder, int Løn) {this.name = navn this.age = alder this.Salary = løn} @Override offentlige boolske er lig med (Objekt o) {hvis (dette == o) {returner sandt} hvis (o == null || getClass ()! = O.getClass ()) {return false} Eqls eqls = (Eqls) o returneringsalder == eqls.age && Løn == eqls.Salary && name.equals (eqls.name)}}}

Produktion:

falsk
sand
falsk

Efter forståelse af Java Comparator-grænsefladen, lad os bevæge os mod vores næste emne, dvs. sammenlignelig vs sammenlignelig.

hvad er init i python

Komparator vs Sammenlignelig

KomparatorSammenlignelig
Comparator bruges til at sortere attributter for forskellige objekter.Sammenlignelig grænseflade bruges til at sortere objekterne med naturlig rækkefølge.
En Comparator-interface sammenligner to forskellige klasseobjekter, der leveres.Sammenlignelig grænseflade sammenligner “denne” reference med det angivne objekt.
En komparator er til stede i pakken java.util.Sammenlignelig findes i java.lang-pakke.
Komparator påvirker ikke den oprindelige klasseSammenlignelig påvirker den oprindelige klasse, dvs. den aktuelle klasse ændres.
Comparator giver sammenligne () metode, lig () metode til at sortere elementer.Comparable giver comparTo () -metoden til at sortere elementer.

Dette bringer os til slutningen af ​​denne artikel om Java-komparator. Hvis du vil vide mere om Java, kan du henvise til vores .

Hvis du fandt denne artikel om “Comparator in Java ”Relevant, Tjek den af Edureka, et pålideligt online læringsfirma med et netværk på mere end 250.000 tilfredse elever spredt over hele kloden. Vi er her for at hjælpe dig med hvert trin på din rejse, for at blive et ud over dette java-interviewspørgsmål, kommer vi med en læseplan, der er designet til studerende og fagfolk, der ønsker at være Java-udvikler. Kurset er designet til at give dig et forspring i Java-programmering og træne dig til både core og sammen med forskellige Java-rammer som Hibernate & Spring.

Har du et spørgsmål til os? Nævn det i kommentarfeltet i denne “Comparator in Java ”Artikel og vi vender tilbage til dig hurtigst muligt.