logo

Java-par

Java Pair-klassen lagrar värde i nyckel-värde-parkombinationen. Det är användbart för att få två värden. Denna nyckel-värde kombination kallas tupler.

Paren är användbara när vi vill att två värden ska returneras från en metod. Till exempel, om vi har en metod som beräknar kvadratroten ur ett tal och vi vill skriva ut talet med dess kvadratrot. Således kan vi skriva ut resultatet i en kombination av tal och dess kvadratrot (t.ex. (5, 25)) med hjälp av parklassen.

Java tillhandahåller en inbyggd parklass från Java 8.

I det här avsnittet kommer vi att se hur du använder klassen Par i Java. Vidare kommer vi att skapa vår skräddarsydda parklass.

Parklass i Java

Sedan Java 8 tillhandahåller Java en parklass för att lagra värdena i nyckelparkombinationer. För att lagra värdet i parkombination måste vi använda den parametriserade konstruktorn som tillhandahålls av javafx.util.Pair klass.

Klassen Par är användbar när du lagrar värdet i en träddatastruktur. När du utför rekursionsoperationen på en träddatastruktur är det lätt att överföra värde från en nod till en annan nod med hjälp av klassen Par. Dessa värden kan vara minimala och maximala nodvärden upp till den noden. Detta skulle hindra pekaren från att återbesöka vissa koder upprepade gånger.

I Java används kartorna för att lagra värdet i form av en nyckelparkombination. De lagrar värdet som tuplar och använder dem som ett enda objekt.

För att implementera Pair-klassen måste vi importera dess överordnade paket:

 import javafx.util.Pair; 

Inbyggd parklass använder följande notation av nyckel och värde precis som Karta i Java för att lagra ett par:

 

Deklaration:

Klassobjektet Par deklareras enligt följande:

java if else-sats
 Pair p = new Pair(5 ,'Five'); 

Ovanstående syntax kommer att skapa ett objekt av typen och konstruktör kommer att ta värdet 5 och 'Fem' och lagra dem i parklassen.

Parklassmetoder

Följande metoder tillhandahålls av Java Pair-klassen:

getKey()

Den får nyckeln för det givna paret och returnerar nyckeln för det angivna paret. Det deklareras enligt följande:

 public K getKey() 

getValue()

Den får värdet för det givna paret och returnerar värdet på paret. Det deklareras enligt följande:

 public V getValue() 

hash-kod()

Den genererar hashkoden för paret; denna hashkod beräknas med både namnet och värdet på paret. Den åsidosätter klassen HashCode och returnerar hashkoden för paret. Det deklareras enligt följande:

 public int hashCode() 

lika()

Den används för att testa paret för likhet med det andra paret. Om objektet inte är specificerat för testet eller är null, kommer det att returnera false. De givna två paren kommer att betraktas som lika om och endast om deras namn och värden är desamma. Det deklareras enligt följande:

 public boolean equals(Object o) 

Det krävs '-o'-argumentobjektet för att testa för likheten med paret. Den åsidosätter lika i klassen Objekt och returnerar sant om det givna paret är lika; annars kommer det att returnera falskt.

att stränga()

Den används för att representera paret som sträng. I metoden toString() används alltid standardavgränsaren för namn/värde='. Den åsidosätter toString i klassen Object och returnerar strängvärdet för paret. Det deklareras enligt följande:

 public String toString() 

Parklasskonstruktör

Parklasskonstruktorn skapar ett nytt par. Den tar nyckel- och parvärdena som ett argument. Det deklareras enligt följande:

 public Pair(K key, V value) 

Typer av parklasser

Det finns två typer av parklasser i Java, som är följande:

    Oföränderlig parklass:Klasserna Immutable Pair är sådana klasser där värdet på objektet inte kan ändras om det en gång definierats; det betyder att vi inte kan använda setters-metoden för att ändra de definierade värdena. Generellt sett kommer värdet att förbli konstant om det definieras.Föränderlig parklass:De föränderliga klasserna tillåter oss att ändra värdet när som helst i programmet. Vi kan använda getters och setters metoder för att komma åt och ändra värdet på ett objekt. Vi skulle kunna ändra värdena senare i programmet även om vi definierade dem i början. De pair.setValue(a,b) och pair.getValue() metoder används för att ställa in och komma åt objektvärdet.

Varför behöver vi parklass

Parklassen används för att få värdet i en nyckelparkombination. Med andra ord kan vi säga att parklassen tillhandahåller metoder som returnerar två värden tillsammans. Det kan finnas många anledningar till att vi använder klassen Par.

Följande är några fall när vi behöver använda klassen Par:

  • Anta att vi vill returnera flera värden. Vi kan dock göra det genom att använda vissa datastrukturer som Arrays och HashMap, men när vi har att göra med ett kluster av variabler tillsammans kan det vara komplicerat att returnera båda. I sådana fall kommer parklassen att vara till stor hjälp.
  • Om vi ​​vill utföra en matematisk operation och vi vill visa talet tillsammans med dess utdata, gör vi det enkelt genom att använda klassen Par.
  • Om vi ​​vill utföra en operation på en träddatastruktur.

Exempel på parklass

Låt oss förstå det med ett grundläggande exempel:

Parklass är en del av JavaFX , så vi måste skapa och konfigurera ett JavaFX-projekt. Se Hur man skapar ett JavaFX-projekt i Eclipse .

Skapa nu en klassfil under src mapp.

Vi skapar en TestPair-klass.

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

I programmet ovan tar vi ett parvärde som innehåller ett heltalsnyckelvärde och ett strängparvärde. Vi deklarerar en parklass med dess standardsyntax och skriver ut dess värde med metoderna getKey() och getValue() för parklassen. Det kommer att visa följande utdata:

Produktion:

 The key is :5 The Pair value is :Five 

Anpassad parklass

Om du inte vill använda den inbyggda parklassen kan du anpassa en parklass med Generics. Tänk på exemplet nedan:

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

Från ovanstående kod har vi skapat en anpassad parklass och lagrar två värden i en enda variabel och skriver ut den.

Produktion:

 

Därför kan vi, med hjälp av generiska metoder, ta fördelarna med en parklass utan att använda JavaFX.

Låt oss förstå dess beteende med funktioner:

Parklass med funktioner

Vi kan använda en parklass för att returnera två värden med en funktion. För att utföra denna process måste returtypen av funktion vara ett par. Tänk på exemplet nedan:

TestPair2.java:

android versioner
 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; } } 

Produktion:

 Enter Value Five Enter Key 5 

Slutsats:

Parklasser är mycket användbara för att förbättra kodeffektiviteten. Ett användbart fall av klassen Par är att lagra värdet i träddatastrukturen. Vi kan använda inbyggda parklasser eller anpassa våra klasser. Om de används på rätt sätt kommer de att vara till stor hjälp.