C++ kalboje turime std::pair paslaugų bibliotekoje, kuri yra labai naudinga, jei norime išlaikyti porą vertybių kartu. Mes ieškojome lygiavertės klasės porai Java, bet porų klasė neatsirado iki Java 7. JavaFX 2.2 turi javafx.util.Pair klasė, kuri gali būti naudojama porai saugoti. Turime išsaugoti reikšmes į Pair, naudodami parametrinį konstruktorių, kurį pateikia javafx.util.Pair klasė.
Pastaba: Atminkite, kad pora naudojama HashMap / TreeMap . Čia tiesiog nurodoma kartu saugoma verčių pora.
Javafx.util.Pair klasės pateikti metodai
Sintaksė: Poros klasė Java metodu
Pair var_name = new Pair(key, value);>
- Pora (K raktas, V reikšmė): Sukuria naują porą.
- loginis lygus (): Jis naudojamas dviejų porų objektų palyginimui. Jis atlieka gilų palyginimą, ty lygina remdamasis reikšmėmis (), kurios yra saugomos poros objektuose.
Pavyzdys:
java
Pair p1 =>new> Pair(>3>,>4>);> Pair p2 =>new> Pair(>3>,>4>);> Pair p3 =>new> Pair(>4>,>4>);> System.out.println(p1.equals(p2) + + p2.equals(p3));> |
>
>
Išvestis:
true false>
- String toString(): Šis metodas grąžins poros stygos atvaizdavimą.
- K getKey(): Tai grąžina poros raktą.
- V getValue(): Tai grąžina poros vertę.
- int hashCode(): Sugeneruokite maišos kodą porai.
Prieiga prie verčių: Naudojant getKey () ir gautiValue() metodus galime pasiekti Pair objekto reikšmes.
1. getKey(): gauna pirmąją reikšmę.
2. getValue(): gauna antrą reikšmę
Pastaba: Čia nurodoma kartu saugoma verčių pora. Tai nėra kaip pora, kuri naudojama žemėlapyje.
Įgyvendinimas:
Java
// Java program to implement in-built pair classes> import> javafx.util.Pair;> class> GFG {> >// Main driver method> >public> static> void> main(String[] args)> >{> >Pair p> >=>new> Pair(>10>,>'Hello Geeks!'>);> >// printing the values of key and value pair> >// separately> >System.out.println(>'The First value is :'> >+ p.getKey());> >System.out.println(>'The Second value is :'> >+ p.getValue());> >}> }> |
abėcėlė į skaičius
>
>
Pažvelkime į šią problemą.
Problemos pareiškimas : Mums pateikiami n mokinių vardai su atitinkamais balais, gautais viktorinoje. Turime rasti mokinį, surinkusį maksimalų balą klasėje.
Pastaba: Kad paleistumėte toliau pateiktą programą, jūsų kompiuteryje turi būti įdiegta Java 8.
Java
// Java program to find a Pair which has maximum score> // Importing required classes> import> java.util.ArrayList;> import> javafx.util.Pair;> // class> class> Test {> >// This method returns a Pair which hasmaximum score> >public> static> Pair> >getMaximum(ArrayList l)> >{> >// Assign minimum value initially> >int> max = Integer.MIN_VALUE;> >// Pair to store the maximum marks of a> >// student with its name> >Pair ans> >=>new> Pair(>''>,>0>);> >// Using for each loop to iterate array of> >// Pair Objects> >for> (Pair temp : l) {> >// Get the score of Student> >int> val = temp.getValue();> >// Check if it is greater than the previous> >// maximum marks> >if> (val>maks.) {> >max = val;>// update maximum> >ans = temp;>// update the Pair> >}> >}> >return> ans;> >}> >// Driver method to test above method> >public> static> void> main(String[] args)> >{> >int> n =>5>;>// Number of Students> >// Create an Array List> >ArrayList l> >=>new> ArrayList();> >/* Create pair of name of student with their> >corresponding score and insert into the> >Arraylist */> >l.add(>new> Pair(>'Student A'>,>90>));> >l.add(>new> Pair(>'Student B'>,>54>));> >l.add(>new> Pair(>'Student C'>,>99>));> >l.add(>new> Pair(>'Student D'>,>88>));> >l.add(>new> Pair(>'Student E'>,>89>));> >// get the Pair which has maximum value> >Pair ans = getMaximum(l);> >System.out.println(ans.getKey() +>' is top scorer '> >+>'with score of '> >+ ans.getValue());> >}> }> |
>
>
Išvestis:
Student C is top scorer with score of 99>
Pastaba: Pirmiau nurodyta programa gali neveikti internetiniame IDE, naudokite neprisijungus pasiekiamą kompiliatorių.