Come verificare se due array contengono gli stessi elementi in Java

Come verificare se due array contengono gli stessi elementi in Java
Nella programmazione Java, ci possono essere casi in cui è necessario per lo sviluppatore di omettere le voci ripetute al fine di semplificare la complessità del codice. Ad esempio, eliminando i valori identici in diverse posizioni del codice ordinandoli. In tali scenari, il controllo se due array contengono elementi identici in Java è di grande aiuto nell'analisi dei valori ripetuti e inutili.

Questo articolo approfondirà gli approcci per verificare se due array accumulano elementi identici in Java.

Come verificare se due array contengono gli stessi elementi in Java?

Per verificare se due array accumulano gli stessi elementi in Java, applica i seguenti approcci combinati con "Array.ordinare()" E "Array.accordare()"Metodi:

  • "equivale()" Metodo.
  • "DeepEquals ()" Metodo.

Prima di procedere agli approcci, assicurati di includere il seguente pacchetto con cui lavorare "Array":

Importa Java.util.Array;

Approccio 1: verificare se due array contengono gli stessi elementi in Java usando l'array.Metodo equals () ”

IL "Array.ordinare()"Il metodo può essere utilizzato per ordinare completamente un array o una parte specificando gli indici di avvio e finale e"Array.equivale()"Controlla il metodo se i due array sono uguali o no. IL "Array.accordare()"Metodo in Java, tuttavia, restituisce il valore fornito in"corda" formato.

Questi approcci possono essere applicati in combinazione per ordinare prima gli elementi dell'array, trasformarli in rappresentazione delle stringhe e quindi verificare gli elementi identici in entrambi gli array.

Sintassi

Vettore.Ordina (array, start, end);

Nella sintassi sopra:

  • "vettore"Si riferisce all'array che deve essere risolto.
  • "inizio"È l'indice di avvio da dove avviare l'ordinamento.
  • "FINE"Corrisponde all'indice in cui l'ordinamento deve terminare.

Public Static Boolean Equals (int [] a, int [] a2)

Qui, "UN" E "A2"Indica gli array che devono essere testati per l'uguaglianza.

String statico pubblico ToString (int [] x)

In questa sintassi:

  • "int [] x"Indica l'array per il quale è necessario restituire la rappresentazione della stringa.

Esempio

Panoramiamo il seguente esempio:

Classe pubblica SameElements
public static void main (string args [])
int [] array1 = 2, 1, 3;
int [] array2 = 3, 2, 1;
Sistema.fuori.println ("Il primo array è:"+array.toString (array1));
Sistema.fuori.println ("Il secondo array è:"+array.toString (array2));
Array.Ordina (array1);
Array.Ordina (array2);
Sistema.fuori.println ("Il primo array ordinato è:"+array.toString (array1));
Sistema.fuori.println ("Il secondo array ordinato è:"+array.toString (array2));
Sistema.fuori.println ("Fai gli array contengono gli stessi elementi? "
+Array.equals (array1, array2));

In questo codice, applica i seguenti passaggi:

  • In primo luogo, dichiara due array di "int"Tipi di dati con elementi identici ma in ordine diverso e visualizzarli.
  • Dopodiché, applica il "ordinare()"Metodo due volte per ordinare entrambi gli array dichiarati.
  • Ora, applica il "accordare()"Metodo per restituire gli array ordinati sotto forma di"Corda".
  • Infine, controlla gli stessi elementi contenuti in entrambi gli array tramite "equivale()" metodo.

Produzione

In questo output, si può osservare che gli elementi dell'array vengono ordinati e controllati in modo appropriato.

Approccio 2: controlla se due array contengono gli stessi elementi in Java usando i "array.Metodi DeepEquals () "

IL "Array.DeepEquals ()"Il metodo viene utilizzato per verificare se due array monodimensionali sono uguali o no. Tuttavia, in questo caso, questo metodo può essere applicato per verificare gli array di stringhe monodimensionali.

Sintassi

Public Static Boolean DeepEquals (Object [] Ob1, Object [] OB2)

Nella sintassi sopra offerta, "ob1" E "ob2"Corrisponde agli array che devono essere controllati per l'uguaglianza.

Esempio

Passiamo attraverso l'esempio sotto fornito:

Classe pubblica SameElements2
public static void main (string args [])
String [] array1 = "Harry", "David", "Tim";
String [] array2 = "David", "Tim", "Harry";
Sistema.fuori.println ("Il primo array è:"+array.toString (array1));
Sistema.fuori.println ("Il secondo array è:"+array.toString (array2));
Array.Ordina (array1);
Array.Ordina (array2);
Sistema.fuori.println ("Il primo array ordinato è:"+array.toString (array1));
Sistema.fuori.println ("Il secondo array ordinato è:"+array.toString (array2));
Risultato booleano = array.Deequals (Array1, Array2);
Sistema.fuori.println ("Fai gli array contengono gli stessi elementi? "+risultato);

Secondo questo frammento di codice, eseguire i seguenti passaggi:

  • Prima di tutto, dichiara due "Corda"Array con i valori della stringa dichiarati.
  • Nel passaggio successivo, allo stesso modo, applica il "accordare()"Metodo e visualizza gli array.
  • Ora, allo stesso modo, applica il "ordinare()"Metodo con ciascuno degli array definiti per ordinare gli elementi dell'array.
  • Infine, applica il "DeepEquals ()"Metodo per applicare un controllo sugli elementi identici negli array, come argomento.

Produzione

In questo risultato, si può implicare che il risultato corrispondente rispetto al controllo applicato viene restituito.

Nota: Se viene applicato il controllo per gli elementi identici prima di ordinare gli elementi dell'array, entrambi gli approcci discussi restituiscono "falso" risultato.

Conclusione

Per verificare se due array accumulano gli stessi elementi in Java, applica il “Array.ordinare()" E "Array.accordare()Metodi combinati con il "Array.equivale()", o il "Array.DeepEquals ()"Metodi. Questi approcci possono essere applicati prima, ordinare gli array e quindi restituire un risultato booleano in base al controllo applicato. Questo blog ha dimostrato di verificare gli elementi identici nei due array.