logo

Coppia Java

La classe Java Pair memorizza il valore nella combinazione di coppie chiave-valore. È utile per ottenere due valori. Questa combinazione di valori-chiave è nota come tuple.

Le coppie sono utili quando vogliamo che due valori vengano restituiti da un metodo. Ad esempio, se abbiamo un metodo che calcola la radice quadrata di un numero e vogliamo stampare il numero con la sua radice quadrata. Pertanto, possiamo stampare l'output in una combinazione di numeri e la sua radice quadrata (ad esempio (5, 25)) utilizzando la classe coppia.

Giava fornisce una classe Pair incorporata da Java 8.

In questa sezione vedremo come utilizzare la classe Pair in Java. Inoltre, creeremo la nostra classe Pair personalizzata.

Classe di coppia in Java

A partire da Java 8, Java fornisce una classe Pair per memorizzare i valori nelle combinazioni di coppie di chiavi. Per memorizzare il valore in una combinazione di coppie, dobbiamo utilizzare il costruttore parametrizzato fornito da javafx.util.Pair classe.

La classe Pair è utile durante la memorizzazione del valore in una struttura dati ad albero. Durante l'esecuzione dell'operazione di ricorsione su una struttura dati ad albero, è facile passare valore da un nodo a un altro nodo utilizzando la classe Pair. Questi valori possono essere valori minimi e massimi del nodo fino a quel nodo. Ciò impedirebbe al puntatore di rivisitare ripetutamente determinati codici.

In Java, le mappe vengono utilizzate per memorizzare il valore sotto forma di combinazione di coppie di chiavi. Memorizzano il valore come tuple e li gestiscono come un singolo oggetto.

Per implementare la classe Pair, dobbiamo importare il suo pacchetto genitore:

 import javafx.util.Pair; 

La classe di coppia incorporata utilizza la seguente notazione di Chiave e Valore proprio come Mappa in Giava per memorizzare una coppia:

 

Dichiarazione:

L'oggetto della classe Pair è dichiarato come segue:

 Pair p = new Pair(5 ,'Five'); 

La sintassi precedente creerà un oggetto del tipo e il costruttore prenderà il valore 5 e 'Cinque' e li memorizzerà nella classe Pair.

Metodi di classe accoppiata

I seguenti metodi sono forniti dalla classe Java Pair:

scrivi json nel file python

getKey()

Ottiene la chiave per la coppia specificata e restituisce la chiave per la coppia specificata. Si dichiara così:

 public K getKey() 

getValore()

Ottiene il valore per la coppia data e restituisce il valore della coppia. Si dichiara così:

 public V getValue() 

codice hash()

Genera il codice hash per la coppia; questo hashcode viene calcolato utilizzando sia il nome che il valore della coppia. Sostituisce la classe HashCode e restituisce il codice hash per la coppia. Si dichiara così:

 public int hashCode() 

equivale()

Viene utilizzato per testare l'uguaglianza della coppia con l'altra coppia. Se l'oggetto non è specificato per il test o è nullo, restituirà false. Le due coppie indicate saranno considerate uguali se e solo se i loro nomi e valori sono gli stessi. Si dichiara così:

 public boolean equals(Object o) 

Sono necessari gli argomenti '-o' per verificare l'uguaglianza con la coppia. Sostituisce gli uguali nella classe Oggetti e restituisce vero se la coppia data è uguale; in caso contrario, restituirà false.

accordare()

Viene utilizzato per rappresentare la coppia come String. Nel metodo toString() viene sempre utilizzato il nome/valore predefinito delimitatore='. Sostituisce toString nella classe Object e restituisce il valore String della coppia. Si dichiara così:

tipi di apprendimento automatico
 public String toString() 

Costruttore di classi di coppia

Il costruttore della classe Pair crea una nuova coppia. Accetta la chiave e i valori della coppia come argomento. Si dichiara così:

 public Pair(K key, V value) 

Tipi di classi di coppia

Esistono due tipi di classi Pair in Java, che sono le seguenti:

    Classe di coppia immutabile:Le classi Coppia Immutabile sono quelle classi in cui il valore dell'oggetto non può essere modificato se una volta definito; ciò significa che non possiamo utilizzare il metodo setter per alterare i valori definiti. In genere, il valore rimarrà costante se definito.Classe di coppia mutabile:Le classi mutabili ci consentono di modificare il valore in qualsiasi momento nel programma. Possiamo utilizzare metodi getter e setter per accedere e modificare il valore di un oggetto. Potremmo modificare i valori più avanti nel programma anche se li abbiamo definiti all'inizio. IL coppia.setValore(a,b) E coppia.getValue() i metodi vengono utilizzati per impostare e accedere al valore dell'oggetto.

Perché abbiamo bisogno del corso in coppia

La classe coppia viene utilizzata per ottenere il valore in una combinazione di coppie di chiavi. In altri termini possiamo dire che la classe coppia fornisce metodi che restituiscono due valori insieme. Potrebbero esserci molte ragioni per cui utilizziamo la classe Pair.

Di seguito sono riportati alcuni casi in cui è necessario utilizzare la classe Pair:

  • Supponiamo di voler restituire più valori. Tuttavia, possiamo farlo utilizzando alcune strutture dati come Array e HashMap, ma quando abbiamo a che fare con un cluster di variabili insieme, restituirle entrambe potrebbe essere complicata. In questi casi, la classe Pair sarà molto utile.
  • Se vogliamo eseguire un'operazione matematica e vogliamo visualizzare il numero insieme al suo output, lo possiamo fare facilmente utilizzando la classe Pair.
  • Se vogliamo eseguire un'operazione su una struttura dati ad albero.

Esempio di classe di coppia

Capiamolo con un esempio basilare:

La classe Pair fa parte di JavaFX , quindi dobbiamo creare e configurare un progetto JavaFX. Vedi Come creare un progetto JavaFX in Eclipse .

Ora crea un file di classe sotto il file src cartella.

Stiamo creando una classe 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()); } } 

Nel programma sopra, stiamo prendendo un valore di coppia che contiene un valore di chiave intero e un valore di coppia di stringhe. Dichiareremo una classe Pair utilizzando la sua sintassi standard e stamperemo il suo valore utilizzando i metodi getKey() e getValue() della classe Pair. Verrà visualizzato il seguente output:

Produzione:

 The key is :5 The Pair value is :Five 

Classe di coppia personalizzata

Se non desideri utilizzare la classe Pair incorporata, puoi personalizzare una classe Pair utilizzando Generics. Considera l'esempio seguente:

CustomizedPair.java:

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

Dal codice precedente, abbiamo creato una classe Coppia personalizzata, abbiamo memorizzato due valori in una singola variabile e l'abbiamo stampata.

Produzione:

 

Pertanto, utilizzando metodi generici, possiamo sfruttare i vantaggi di una classe Pair senza utilizzare JavaFX.

Capiamo il suo comportamento con le funzioni:

Abbina la classe alle funzioni

Possiamo usare una classe Pair per restituire due valori usando una funzione. Per eseguire questo processo, il tipo di funzione restituito deve essere una coppia. Considera l'esempio seguente:

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

Produzione:

 Enter Value Five Enter Key 5 

Conclusione:

Le classi di coppia sono molto utili per migliorare l'efficienza del codice. Un caso utile della classe Pair è memorizzare il valore nella struttura dei dati ad albero. Possiamo utilizzare le classi Pair integrate o personalizzare le nostre classi. Se utilizzati correttamente, saranno molto utili.