logo

Parklasse i Java

I C++ har vi std::par i brugsbiblioteket, hvilket er til stor nytte, hvis vi vil holde et par værdier sammen. Vi ledte efter en tilsvarende klasse for par i Java, men Pair-klassen opstod ikke før Java 7. JavaFX 2.2 har javafx.util.Pair klasse, som kan bruges til at opbevare et par. Vi er nødt til at gemme værdierne i Pair ved hjælp af den parametriserede konstruktør leveret af javafx.util.Pair klasse.

Bemærk: Bemærk, at parret bruges i HashMap/TreeMap . Her refererer blot til et par værdier, der er gemt sammen.



Metoder leveret af javafx.util.Pair-klassen

Syntaks: Parklassen i Java-metoden

Pair var_name = new Pair(key, value);>
  • Par (K-tast, V-værdi): Opretter et nyt par.
  • boolesk lig med(): Det bruges til at sammenligne to par objekter. Den laver en dyb sammenligning, dvs. den sammenligner på basis af værdierne (), som er gemt i parobjekterne.

Eksempel:

java




sammenlignelig liste





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));>

>

1 milliard til mio
>

Produktion:

true false>
  • String toString(): Denne metode returnerer strengrepræsentationen af ​​parret.
  • K getKey(): Det returnerer nøglen til parret.
  • V getValue(): Det returnerer en værdi for parret.
  • int hashCode(): Generer en hash-kode til parret.

Adgang til værdier: Ved brug af getKey() og getValue() metoder, vi kan få adgang til et par-objekts værdier.

1. getKey(): henter den første værdi.
2. getValue(): får den anden værdi

Bemærk: Her refererer til et par værdier, der er gemt sammen. Det er ikke som par, der bruges i Map.

Implementering:

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());> >}> }>

>

streng int

>

Lad os se på følgende problem.

Problemformulering : Vi får navnene på n elever med deres tilsvarende score opnået i en quiz. Vi skal finde eleven med den maksimale score i klassen.

Bemærk: Du skal have Java 8 installeret på din maskine for at køre nedenstående program.

Java

java konverter heltal til streng




// 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>max) {> >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());> >}> }>

>

>

Produktion:

Student C is top scorer with score of 99>

Bemærk: Ovenstående program kører muligvis ikke i en online IDE, brug venligst en offline compiler.