English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Neste programa, você aprenderá a conectar dois arrays em Kotlin usando arraycopy e sem usar arraycopy.
import java.util.Arrays fun main(args: Array<String>) { 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 você executar o programa, a saída será:
[1, 2, 3, 4, 5, 6]
No programa acima, temos dois arrays inteiros array1e array2。
Para combinar (juntar) os dois arrays, encontramos seus comprimentos armazenados em aLen e bLen. Em seguida, criamos um array de comprimento aLen + bLen um novo array inteiro result.
Agora, para combinar os dois, usamos a função arraycopy() para copiar cada elemento dos dois arrays para result.
arraycopy(array1, 0, result, 0, aLen) função, para resumir, o programa copiará array1Copiar do índice 0 para result e do índice 0 para aLen.
Da mesma forma, para arraycopy(array2,0,result,aLen,bLen) informa ao programa que copiará array2Copiar do índice 0 para result e do índice aLen para bLen.
import java.util.Arrays fun main(args: Array<String>) { 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 você executar o programa, a saída será:
[1, 2, 3, 4, 5, 6]
No programa acima, não usamos arraycopy, mas copiamos manualmente o array array1e array2no result.
Armazenamos o comprimento total necessário para o result, ou seja, cada elemento do array1.length + array2. length. Em seguida, criamos um novo array de comprimento result.
Agora, usamos for-循环 each para percorrer o array1de cada elemento e o armazenamos no resultado. Após a atribuição, aumentamos a posição pos 1, pos++。
Da mesma forma, fazemos o mesmo com o array2Executamos a mesma operação, começando do array1A partir da posição seguinte, começamos a armazenar cada elemento do result.
Este é o código Java equivalente:Programa Java para Conectar Dois Vetores。