Lær at bruge samlinger.Sorter () metode til at sortere arraylist af brugerdefinerede objekter i java med eksempler.
som standard sorterer denne metode den usorterede List
i stigende rækkefølge, dvs.i henhold til den naturlige bestilling af listeposterne. Vi kan bruge samlinger.reverseOrder () metode til omvendt sortering.
Sorter ArrayList af objekter – samlinger.sorter (liste )
- det sorterer de angivne
List
varer i deres naturlige rækkefølge., - alle elementer i
list
skal implementere den sammenlignelige grænseflade. - alle elementer på listen skal være gensidigt sammenlignelige og bør ikke kaste
ClassCastException
. - denne slags er garanteret at være stabil. Det betyder, at lige elementer ikke vil blive omorganiseret som følge af den slags.
- den specificerede
list
skal kunne ændres, men skal ikke kunne ændres. - metode returnerer ikke nogen værdi.,
eksempel 1: Sorter arraylist af strenge
Java eksempel for at sortere en liste over navne i leksikografisk eller i ordbogen rækkefølge.eksempel 2: Sorter arraylist af brugerdefinerede objekter efter felt med sammenlignelige
Vi skal muligvis sortere liste over brugerdefinerede objekter, der har deres egen sorteringslogik. I dette tilfælde skal du implementere Comparator
interface i brugerdefineret klasse.
for eksempel har domæneobjektet Employee
en brugerdefineret corasion-logik baseret på medarbejderen id
felt., Kassen til sammenligning logik i compareTo () metode.Java-program til sortering af listen over medarbejderobjekter ved id
, i stigende og faldende ordrer.
program output.
, E , E , E , E ], E , E , E , E ]
Sorter ArryList af objekter – samlinger.sorter (liste, komparator )
Hvis domæneobjekt ikke implementerer Comparable
interface, kan vi bruge brugerdefineret Comparator
implementeringer. Brug lambda udtryk til endnu mere forkorte syntaksen.,
eksempel 1: Oprettelse af brugerdefineret komparator
Dette er generel syntaks til at oprette en komparator i Java.
Hvis du er i Java 8, skal du bruge lambda-udtryk for at gøre syntaksen mere læsbar.
eksempel 2: Sorter liste over objekter efter felt med komparator
Programudgang.
, E , E , E , E ], E , E , E , E ]
glad læring !!