Ako triediť Array, ArrayList, String, List, Map a Set v Jave?



Tento článok sa zameriava na triedenie v Jave. Tu sa naučíte, ako triediť Array, ArrayList, String, List, Map a Set v Jave.

Triedenie je nevyhnutnou súčasťou každého programovacieho jazyka. Java je bezpochyby jeden z najlepších programovacích jazykov. Má rôzne funkcie, ktoré uľahčujú! Tento článok vám pomôže rozvinúť všetko o triedení hlavne triedte Array, ArrayList, String, List, Map a Set in Java.

Tento článok o triedení pojednáva o nižšie uvedených témach:





Poďme začať. :-)

Zoradiť pole v Jave

Polia v Jave uložiť jednu alebo viac hodnôt konkrétneho dátového typu a poskytnúť indexovaný prístup na ich uloženie do jednej premennej. Pozrime sa na nižšie uvedený program na zoradenie poľa v Jave vo vzostupnom poradí. Uistite sa však, že máte Java nainštalovaná .



Zoradiť pole v jazyku Java - vzostupne

balíček Edureka import java.util.Arrays verejná trieda SortArray {public static void main (String [] args) {int [] arr = {52,12,2,72,4} // pole 5 prvkov Arrays.sort (arr ) System.out.printf ('Sorted arr [] =% s', Arrays.toString (arr))}}

Výkon - Zoradené podľa príchodu [] = [2, 4, 12, 52, 72]

Zoradiť pole v Jave - zostupne

balíček Edureka import java.util.Arrays import java.util.Collections verejná trieda SortArray {public static void main (String [] args) {Integer [] arr = {52,12,2,72,4} // použité Integer [ ] namiesto int ako kolekcie Arrays.sort (arr, Collections.reverseOrder ()) // reverseorder () pre zostupné poradie System.out.printf ('Zoradené arr [] =% s', Arrays.toString (arr))} }

Výkon: Zoradené podľa príchodu [] = [72, 52, 12, 4, 2]

Poznámka: Vo vyššie uvedenom kóde som z dôvodu dôvodu použil pole Integer [] namiesto int . Je to preto, že reverseOrder () nepodporuje primitívne typy.



Mnoho ľudí si pletie s konceptom polí a ArrayList v Jave. Nasledujúca tabuľka môže vyčistiť všetky vaše pochybnosti.

Pole ArrayList

Má pevnú dĺžku

Má premenlivú dĺžku (dynamická veľkosť)

Podporuje iba primitívny dátový typ

Do zoznamu je možné pridať iný objekt a údaje

Nepodporuje duplicitné pridanie

Umožňuje pridanie duplicitných prvkov

Môže prechádzať iba v smere dopredu

Môže prechádzať v smere dopredu aj dozadu

Veľkosť sa nedá dynamicky meniť

Veľkosť sa dá dynamicky meniť


Dúfam, že vás rozdiel vyjde, poďme ďalej a uvidíme, ako triediť .

Zoradiť zoznam ArrayList v Jave (reťazec)

Triedenie ArrayList v Jave je možné ľahko vykonať pomocou jednoduchého metóda sort () . Podľa nasledujúceho kódu môžete zoradiť ArrayList v Jave.

balík Edureka import java.util.Arrays import java.util.Collections import java.util. * public class sortingarraylist {public static void main (String args []) {ArrayList list = new ArrayList () // Populate the ArrayList list.add ('sorting') list.add ('java') list.add ('arraylist') list.add ('in') System.out.println ('Unsorted ArrayList:' + list) // tlačené netriedené zbierky polí. sort (list) // spôsob triedenia pre vzostupné poradie System.out.println ('Sorted ArrayList' + 'vo vzostupnom poradí:' + zoznam) // tlač zoradeného arraylistu}}

Výkon -

Unsorted ArrayList: [sorting, java, arraylist, in]
Zoradený ArrayList vo vzostupnom poradí: [arraylist, in, java, sorting]

Pokračujeme v triedení v článku Java, pozrime sa, ako môžete triediť celé čísla. Skúsme implementovať triedenie pomocou inej metódy, t. J. Pomocou metódy Collections.sort ().

Zoradiť zoznam ArrayList v jazyku Java pomocou kolekcií (celé čísla)

Integer ArrayList môžete zoradiť pomocou metódy Collections.sort ().

balík Edureka import java.util.Arrays import java.util.Collections import java.util. * public class SortingArrayList {public static void main (String args []) {ArrayList arraylist = new ArrayList () arraylist.add (48) arraylist. add (2) arraylist.add (19) arraylist.add (22) System.out.println ('Before Sorting:') // before sorting for (int counter: arraylist) {System.out.println (counter)} Collections .sort (arraylist) // funkcia na zoradenie vzostupne System.out.println ('Po zoradení:') // po zoradení pre (int pult: arraylist) {System.out.println (pult)}}}

Výkon -
Pred triedením:
48
2
19
22
Po triedení:
2
19
22
48

Zoradiť reťazec v Jave

Reťazec v Jave je nemenný. Neexistuje žiadny priamy spôsob triedenia a . Môžete použiť polia, ktoré majú metódu CharArray (), ktorá vytvorí vstupný reťazec char, a pomocou inej metódy (Arrays.sort (char c []) môžeme ľahko triediť.

balíček Edureka import java.util.Arrays import java.util.Collections import java.util. * verejná trieda SortingString {public static String sortString (String inputString) {char Array1 [] = inputString.toCharArray () // prevod vstupného reťazca na char pole Arrays.sort (Array1) vrátiť nový reťazec (Array1) // vrátiť zoradený reťazec} verejné statické void main (String [] args) {String inputString = 'Edureka' String outputString = sortString (inputString) System.out.println (' Vstupný reťazec: '+ inputString) System.out.println (' Výstupný reťazec: '+ outputString)}}

Výkon -
Vstupný reťazec: Edureka
Výstupný reťazec: Eadekru

Zoradiť zoznam v prostredí Java

Ak chcete zoznam zoradiť podľa , môžete použiť metódu Collections.sort (). Ďalšie informácie nájdete v nasledujúcom kóde:

balík Edureka import java.util.Arrays import java.util.Collections import java.util. * public class SortingList {public static void main (String [] args) {Integer [] digits = new Integer [] {12,56,89 , 27,22,4,88,65,36} Zoznam digitsList = Arrays.asList (číslice) Collections.sort (digitsList) // zoradený zoznam System.out.println ('Zoradený reťazec:' + digitsList)}}

Výkon : Zoradený reťazec: [4, 12, 22, 27, 36, 56, 65, 88, 89]

Triedenie mapy v Jave

Mapa v Jave patrí k ktorý obsahuje pár kľúč - hodnota. Mapu je preto možné triediť dvoma rôznymi spôsobmi:

  • Zoradiť podľa kľúča
  • Zoradiť podľa hodnoty

Zoradiť podľa kľúča:

balík Edureka import java.util.Arrays import java.util.Collections import java.util. * verejná trieda SortingMap {public static void main (String [] args) {HashMap map = new HashMap () map.put (14, 'Aayushi ') map.put (2,' Rachit ') map.put (30,' Amit ') map.put (5,' Anamika ') TreeMap treeMap = nový TreeMap (mapa) System.out.println (treeMap)}}

Výkon: {2 = Rachit, 5 = Anamika, 14 = Aayushi, 30 = Amit}

Zoradiť podľa hodnoty:

balíček Edureka import java.util.Arrays import java.util.Collections import java.util. * public class SortingMap {public static void main (String [] args) {HashMap unSortedMap = new HashMap () unSortedMap.put (14, 'Aayushi ') unSortedMap.put (20,' Rachit ') unSortedMap.put (60,' Amit ') unSortedMap.put (70,' Anamika ') LinkedHashMap sortMap = new LinkedHashMap () unSortedMap.entrySet () .stream () .sorted (Map.Entry.comparingByValue ()) .forEachOrdered (x -> triedenýMap.stup (x.getKey (), x.getValue ())) System.out.println (triedenýMapa)}}

nájsť najväčšie číslo v poli

Výkon: {14 = Aayushi, 60 = Amit, 70 = Anamika, 20 = Rachit}

Pokračujeme v triedení v Jave, poďme teda na poslednú tému, teda na radenie Set in .

Set Set in Java

Sada v Jave je rozhranie, ktoré rozširuje zbierky. Je to neusporiadaná kolekcia objektov, ktorá neuchováva duplicitné hodnoty. Teraz neexistuje žiadna priama metóda na triedenie súpravy v Jave. Ak chcete teraz triediť množinu, musíte ju previesť na Zoznam a potom použiť API Collections.sort () a znova previesť zoznam späť na množinu. Ďalšie informácie nájdete v nasledujúcom kóde:

balík Edureka import java.util.Arrays import java.util.Collections import java.util. * verejná trieda SortSet {public static void main (String [] args) {// Netriedený zoznam HashSet numbersSet = nový LinkedHashSet (Arrays.asList (12 , 56,89,27,22,4,88,65,36)) Zoznam číselList = nový ArrayList (numbersSet) // konvertovať množinu na zoznam // Zoradiť zoznam Collections.sort (numbersList) numbersSet = nový LinkedHashSet (numbersList) // previesť zoznam na sadu // tlačiť na potvrdenie System.out.println (numbersSet)}}

Výkon : [4, 12, 22, 27, 36, 56, 65, 88, 89]

Týmto sa dostávame na koniec nášho blogu o triedení v Jave, kde ste sa naučili triediť Array, ArrayList, String, Map a Set v Jave. Dúfam, že ste tento blog našli informačný a pre vaše vedomosti pridali hodnotu.

Určite cvičte čo najviac a obráťte sa na svoje skúsenosti.

Pozrite sa na autor: Edureka, dôveryhodná online vzdelávacia spoločnosť so sieťou viac ako 250 000 spokojných študentov rozmiestnených po celom svete. Výcvikový a certifikačný kurz Edureka Java J2EE a SOA je určený pre študentov a profesionálov, ktorí chcú byť vývojármi Java. Kurz je navrhnutý tak, aby vám dal náskok v programovaní v jazyku Java a naučil vás základné aj pokročilé koncepty jazyka Java spolu s rôznymi rámcami Java, ako je Hibernate & Spring.

Máte na nás otázku? Uveďte to, prosím, v sekcii komentárov tohto „Triedenia v Jave: Array, ArrayList, String, Map a Set in Java“ a ozveme sa vám čo najskôr.