In Java, la procedura di scambio di due variabili si riferisce alle posizioni mutevoli dei valori delle variabili. Possiamo scambiare variabili da due posizioni separate in un array. Esistono numerosi metodi per lo scambio di elementi in un array; Tuttavia, questa operazione genererà un errore se la dimensione di entrambi gli array è diversa. Pertanto, le matrici che devono essere scambiate dovrebbero avere le stesse dimensioni.
Questo post ti dirà come scambiare array in java.
Come scambiare array in java?
Per gli array di scambio, Java supporta tre approcci menzionati di seguito:
Proviamo a capire questi approcci per lo scambio di array in Java.
Metodo 1: swap array in java usando gli operatori aritmetici
Per lo scambio di array, è possibile utilizzare gli operatori aritmetici Java "+" e "-". In questo approccio, il primo elemento del primo array, "X", E il primo elemento del secondo array"y", Vengono recuperati e sottratti usando l'operatore"-"e verrà archiviato nel primo indice del primo array. Ora, usa il valore aggiornato di "X"Con il primo elemento di"y"E aggiungili usando il"+"Operatore e archivialo sul primo indice dell'array"y".
Quindi, prendi il valore assoluto del primo elemento del primo array e il primo elemento del secondo array e sottrarli usando l'operatore "-" e memorizzalo nel primo indice del primo elemento. Questo processo continua fino alla lunghezza dell'array e tutti gli elementi saranno scambiati.
Sintassi
Seguire la sintassi data per lo scambio di array utilizzando gli operatori aritmetici:
x [i] = x [i] - y [i];
y [i] = x [i] + y [i];
x [i] = AbsoluteValue (x [i] - y [i]);
IL "X" E "y"Sono gli array, mentre"io"Rappresenta gli indici dell'array durante l'attraversamento nel ciclo per.
Esempio
In questo esempio, in primo luogo, creeremo un metodo definito dall'utente chiamato "valore assoluto()"E passare una variabile tipo intero"X"Come parametro. Come dichiarazione di restituzione, il "Matematica.addominali()"Il metodo viene chiamato, che accetta la variabile passata come argomento. Il valore assoluto dell'argomento passato viene restituito da questo metodo. Se l'argomento non è negativo, emette lo stesso valore; Altrimenti, la negazione dell'argomento viene restituita:
public static int AbsoluteValue (int x)
restituire matematica.ABS (X);
Nel metodo principale (), creeremo due array "X" E "y"Di dimensioni"3"E assegna loro i seguenti valori:
int x [] = 1,3,5;
int y [] = 2,4,6;
Quindi, useremo gli operatori aritmetici per scambiare gli elementi di array usando "per" ciclo continuo:
per (int i = 0; ix [i] = x [i] - y [i];
y [i] = x [i] + y [i];
x [i] = AbsoluteValue (x [i] - y [i]);
Infine, stamperemo gli elementi ordinati di array "X" E "y"Utilizzando il metodo ToString () Classe di array:
Sistema.fuori.println ("array x [] dopo lo scambio:"+ array.toString (x));
Sistema.fuori.println ("array y [] dopo lo scambio:"+ array.toString (y));
L'output mostra che i valori degli array sono stati scambiati correttamente:
Vediamo il metodo successivo per lo scambio di array in Java che è Bitwise Operatori.
Metodo 2: swap array in java usando gli operatori bitwise
Possiamo anche scambiare array usando operatori bitwise (^) in cui l'operazione XOR viene eseguita su bit di input per bit. Emette "1"Se i bit associati sono diversi; altro, ritorna "0".
Sintassi
Seguire la sintassi data per utilizzare gli operatori bitwise per lo scopo specificato:
x [i] = x [i] ^ y [i];
Esempio
Qui useremo gli stessi array "X" E "y"Ed eseguire l'operazione bitwise per scambiare array:
per (int i = 0; i< x.length; i++)
x [i] = x [i] ^ y [i];
y [i] = x [i] ^ y [i];
x [i] = x [i] ^ y [i];
Stampa gli elementi ordinati di array usando il “accordare()"Metodo di array Classe:
Sistema.fuori.println ("array x [] dopo lo scambio:"+ array.toString (x));
Sistema.fuori.println ("array y [] dopo lo scambio:"+ array.toString (y));
Produzione
Se ritieni che i metodi di cui sopra siano difficili, allora puoi seguire il metodo di seguito.
Metodo 3: swap array in java usando la variabile "temp"
Questo metodo utilizzerà una variabile temporanea "temp"Ciò memorizza temporaneamente gli elementi per lo scambio di array. In questo metodo, non verrà eseguita alcuna operazione speciale; Devi solo archiviare il primo elemento nella variabile temporanea, aggiungere l'elemento dell'altro array in posizione, quindi scambiare il valore dell'elemento temporaneo nell'elemento del secondo array.
Sintassi
Per gli array di scambio usando la variabile temporanea, seguire la sintassi di seguito:
temp = x [i];
x [i] = y [i];
y [i] = temp;
Qui, "temp"È una variabile temporanea,"X" E "y"Sono gli array e"io"Rappresenta i loro indici attuali.
Esempio
Useremo gli stessi array "X" E "y"E scambia gli array usando il"temp"Variabile. Per fare ciò, prima controlla le dimensioni degli array, se sono uguali, li sostituiremo; Altrimenti, stampare l'istruzione Errore sulla console:
Se (x.lunghezza == y.lunghezza)
int temp;
per (int i = 0; itemp = x [i];
x [i] = y [i];
y [i] = temp;
altro
Sistema.fuori.println ("array di dimensioni diverse non possono essere scambiate");
Stampa gli elementi ordinati di array sulla console:
Sistema.fuori.println ("array x [] dopo lo scambio:"+ array.toString (x));
Sistema.fuori.println ("array y [] dopo lo scambio:"+ array.toString (y));
Come puoi vedere, abbiamo scambiato correttamente i valori degli array specificati:
Abbiamo fornito i metodi più semplici per lo scambio di array in Java.
Conclusione
Per lo scambio di array in Java, è possibile utilizzare operatori aritmetici, operatori bitwise o la variabile Temp. Le prime due tecniche non richiedono alcuna variabile o array extra per lo scambio di elementi di array, mentre il terzo metodo utilizza la variabile temporanea e richiede di creare una variabile aggiuntiva per archiviare temporaneamente gli elementi. In questo post, abbiamo spiegato i metodi per lo scambio di array in Java con esempi dettagliati.