Programma Kotlin per concatenare due array

In questo programma imparerai a concatenare due array in Kotlin usando arrayycopy e senza di esso.

Esempio 1: concatenare due array utilizzando arraycopy

 import java.util.Arrays fun main(args: Array) ( val array1 = intArrayOf(1, 2, 3) val array2 = intArrayOf(4, 5, 6) val aLen = array1.size val bLen = array2.size val result = IntArray(aLen + bLen) System.arraycopy(array1, 0, result, 0, aLen) System.arraycopy(array2, 0, result, aLen, bLen) println(Arrays.toString(result)) )

Quando esegui il programma, l'output sarà:

 (1, 2, 3, 4, 5, 6)

Nel programma sopra, abbiamo due array di interi array1 e array2.

Per combinare (concatenare) due array, troviamo la sua lunghezza memorizzata rispettivamente in aLen e bLen. Quindi, creiamo un nuovo risultato di array intero con lunghezza aLen + bLen.

Ora, per combinare in entrambi, copiamo ogni elemento in entrambi gli array nel risultato usando la funzione arraycopy ().

La arraycopy(array1, 0, result, 0, aLen)funzione, in termini semplici, dice al programma di copiare array1 partendo da index 0a result da index 0ad aLen.

Allo stesso modo, for arraycopy(array2, 0, result, aLen, bLen)dice al programma di copiare array2 a partire da index 0a resultda index aLen a bLen.

Esempio 2: concatenare due array senza utilizzare arraycopy

 import java.util.Arrays fun main(args: Array) ( val array1 = intArrayOf(1, 2, 3) val array2 = intArrayOf(4, 5, 6) val length = array1.size + array2.size val result = IntArray(length) var pos = 0 for (element in array1) ( result(pos) = element pos++ ) for (element in array2) ( result(pos) = element pos++ ) println(Arrays.toString(result)) )

Quando esegui il programma, l'output sarà:

 (1, 2, 3, 4, 5, 6)

Nel programma sopra, invece di utilizzare arraycopy, copiamo manualmente ogni elemento di entrambi gli array array1 e array2 nel risultato.

Memorizziamo la lunghezza totale richiesta per il risultato, ad es array1.length + array2. length. Quindi, creiamo un nuovo risultato di matrice della lunghezza.

Ora, usiamo il ciclo for-each per scorrere ogni elemento di array1 e memorizzarlo nel risultato. Dopo aver assegnato, noi aumentiamo i pos di posizione da 1, pos++.

Allo stesso modo, facciamo lo stesso per array2 e memorizziamo ogni elemento nel risultato a partire dalla posizione dopo array1.

Ecco il codice Java equivalente: programma Java per concatenare due array.

Articoli interessanti...