Trieda Java Pair ukladá hodnotu do kombinácie párov kľúč-hodnota. Je to užitočné na získanie dvoch hodnôt. Táto kombinácia kľúča a hodnoty je známa ako n-tice.
Páry sú užitočné, keď chceme, aby sa z metódy vrátili dve hodnoty. Napríklad, ak máme metódu, ktorá vypočíta druhú odmocninu čísla a chceme vytlačiť číslo s jeho druhou odmocninou. Môžeme teda vytlačiť výstup v kombinácii čísel a jeho druhej odmocniny (napr. (5, 25)) pomocou triedy pair.
Java poskytuje vstavanú triedu Pair z Java 8.
V tejto časti uvidíme, ako používať triedu Pair v Jave. Ďalej vytvoríme našu prispôsobenú triedu Pair.
Párová trieda v jazyku Java
Od verzie Java 8 poskytuje Java triedu Pair na ukladanie hodnôt v kombináciách párov kľúčov. Na uloženie hodnoty v párovej kombinácii musíme použiť parametrizovaný konštruktor, ktorý poskytuje javafx.util.Pair trieda.
Trieda Pair je užitočná pri ukladaní hodnoty do stromovej dátovej štruktúry. Pri vykonávaní operácie rekurzie na stromovej dátovej štruktúre je jednoduché preniesť hodnotu z jedného uzla do druhého pomocou triedy Pair. Tieto hodnoty môžu byť minimálne a maximálne hodnoty uzla až po daný uzol. To by zabránilo tomu, aby sa ukazovateľ opakovane vracal k určitým kódom.
V Jave sa Mapy používajú na uloženie hodnoty vo forme kombinácie párov kľúčov. Ukladajú hodnotu ako n-tice a prevádzkujú ich ako jeden objekt.
Na implementáciu triedy Pair musíme importovať jej nadradený balík:
import javafx.util.Pair;
Vstavaná trieda párov používa nasledujúci zápis kľúča a hodnoty rovnako ako Mapa v Jave uložiť pár:
Vyhlásenie:
Objekt triedy Pair je deklarovaný takto:
Pair p = new Pair(5 ,'Five');
Vyššie uvedená syntax vytvorí objekt typu a konštruktér prevezme hodnotu 5 a „päť“ a uloží ich do triedy Pair.
Metódy párových tried
Trieda Java Pair poskytuje nasledujúce metódy:
getKey()
Získa kľúč pre daný pár a vráti kľúč pre zadaný pár. Vyhlasuje sa takto:
public K getKey()
getValue()
Získa hodnotu pre daný pár a vráti hodnotu páru. Vyhlasuje sa takto:
public V getValue()
hashCode()
Vygeneruje hash kód pre pár; tento hashcode sa vypočíta pomocou názvu aj hodnoty páru. Prepíše triedu HashCode a vráti hash kód pre pár. Vyhlasuje sa takto:
public int hashCode()
rovná sa()
Používa sa na testovanie páru na rovnosť s druhým párom. Ak objekt nie je určený na testovanie alebo je nulový, vráti hodnotu false. Uvedené dva páry sa budú považovať za rovnocenné vtedy a len vtedy, ak sú ich mená a hodnoty rovnaké. Vyhlasuje sa takto:
public boolean equals(Object o)
Na testovanie rovnosti s párom sú potrebné argumenty '-o'. Prepíše hodnotu rovná sa v triede Objects a vráti hodnotu true, ak sa daný pár rovná; v opačnom prípade vráti hodnotu false.
natiahnuť()
Používa sa na reprezentáciu páru ako reťazec. V metóde toString() sa vždy používa predvolený oddeľovač názvu/hodnoty='. Prepíše toString v triede Object a vráti hodnotu String páru. Vyhlasuje sa takto:
public String toString()
Konštruktor párovej triedy
Konštruktor triedy Pair vytvorí nový pár. Ako argument berie hodnoty kľúča a páru. Vyhlasuje sa takto:
public Pair(K key, V value)
Typy párových tried
V jazyku Java existujú dva typy tried Pair, ktoré sú nasledovné:
javascript tutoriál
Prečo potrebujeme párovú triedu
Párová trieda sa používa na získanie hodnoty v kombinácii párov kľúčov. Inými slovami, môžeme povedať, že trieda párov poskytuje metódy, ktoré vracajú dve hodnoty spolu. Môže byť veľa dôvodov, prečo používame triedu Pair.
Nasleduje niekoľko prípadov, keď potrebujeme použiť triedu Pair:
- Predpokladajme, že chceme vrátiť viacero hodnôt. Môžeme to však urobiť pomocou niektorých dátových štruktúr, ako sú Arrays a HashMap, ale keď sa zaoberáme zhlukom premenných spolu, vrátenie oboch môže byť komplikované. V takýchto prípadoch vám veľmi pomôže trieda Pair.
- Ak chceme vykonať matematickú operáciu a chceme zobraziť číslo spolu s jeho výstupom, urobíme to jednoducho pomocou triedy Pair.
- Ak chceme vykonať operáciu na stromovej dátovej štruktúre.
Príklad triedy párov
Poďme to pochopiť na základnom príklade:
Párová trieda je súčasťou JavaFX , takže musíme vytvoriť a nakonfigurovať projekt JavaFX. Pozrite si časť Ako vytvoriť projekt JavaFX v Eclipse .
Teraz vytvorte súbor triedy pod src priečinok.
Vytvárame triedu TestPair.
TestPair.java:
import javafx.util.Pair; public class TestPair { public static void main(String[] args) { Pair p = new Pair(5,'Five'); System.out.println('The key is :' + p.getKey()); System.out.println('The Pair value is :' + p.getValue()); } }
Vo vyššie uvedenom programe berieme hodnotu páru, ktorá obsahuje hodnotu kľúča celého čísla a hodnotu páru reťazcov. Deklarujeme triedu Pair pomocou jej štandardnej syntaxe a tlačíme jej hodnotu pomocou metód getKey() a getValue() triedy pair. Zobrazí nasledujúci výstup:
Výkon:
The key is :5 The Pair value is :Five
Prispôsobená trieda párov
Ak nechcete použiť vstavanú triedu Pair, môžete triedu Pair prispôsobiť pomocou Generics. Zvážte nasledujúci príklad:
CustomizedPair.java:
public class CustomizedPair { int key; String value; public CustomizedPair(int key, String value) //Constructor of the class { this.key = key; this.value = value; } public void print(){ System.out.println(''); } public static void main(String[] args){ CustomizedPair a = new CustomizedPair(1,'Hello'); a.print(); } }
Z vyššie uvedeného kódu sme vytvorili triedu Customized Pair a uložili dve hodnoty do jednej premennej a vytlačili ju.
Výkon:
Preto pomocou generických metód môžeme využiť výhody triedy Pair bez použitia JavaFX.
Poďme pochopiť jeho správanie s funkciami:
Spárovať triedu s funkciami
Na vrátenie dvoch hodnôt pomocou funkcie môžeme použiť triedu Pair. Ak chcete vykonať tento proces, návratový typ funkcie musí byť pár. Zvážte nasledujúci príklad:
TestPair2.java:
import java.util.Scanner; public class TestPair2 { public static void main(String[] args) { Scanner s = new Scanner(System.in); CustomizedPair a = func(s); a.print(); } public static CustomizedPair func (Scanner s){ System.out.println('Enter Value'); String key = s.next(); System.out.println('Enter Key'); int value = s.nextInt(); CustomizedPair a = new CustomizedPair(value, key); return a; } }
Výkon:
Enter Value Five Enter Key 5
Záver:
Párové triedy sú veľmi užitočné na zlepšenie efektívnosti kódu. Jedným z užitočných prípadov triedy Pair je uloženie hodnoty do stromovej dátovej štruktúry. Môžeme použiť vstavané párové triedy alebo prispôsobiť naše triedy. Ak sa používajú správne, budú veľmi užitočné.