Kotlino programa dviem masyvams sujungti

Šioje programoje išmoksite susieti du masyvus Kotline, naudodami masyvo kopiją ir be jos.

1 pavyzdys: sujungkite du masyvus naudodami masyvo kopiją

 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)) )

Kai paleisite programą, išvestis bus:

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

Pirmiau pateiktoje programoje mes turime du sveikųjų skaičių masyvus masyvas1 ir masyvas2.

Norėdami sujungti (susieti) dvi masyvas, mes nustatome, kad jo ilgis yra saugomas atitinkamai aLen ir bLen. Tada sukursime naują sveiko skaičiaus masyvo rezultatą, kurio ilgis aLen + bLen.

Dabar, norėdami sujungti su abiem, mes nukopijuojame kiekvieną elementą abiejuose masyvuose, kad gautume naudodami funkciją arraycopy ().

arraycopy(array1, 0, result, 0, aLen)Funkcija, paprastais žodžiais, pasakoja, kad programa kopijuoti 1 masyvas nuo indeksas 0sukelti iš rodyklės 0į Alen.

Taip pat for arraycopy(array2, 0, result, aLen, bLen)nurodo programai nukopijuoti masyvą2 nuo indekso 0iki resultindekso aLen į bLen.

2 pavyzdys: sujungti du masyvus nenaudojant masyvo

 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)) )

Kai paleisite programą, išvestis bus:

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

Pirmiau minėtoje programoje, užuot naudoję arraycopy, mes rankiniu būdu nukopijuojame abu masyvų masyvo1 ir masyvo2 elementus.

Mes saugome visą rezultatui reikalingą ilgį, t array1.length + array2. length. Tada sukuriame naują masyvo ilgio rezultatą.

Dabar mes naudojame kiekvienai kilpai, norėdami pereiti kiekvieną masyvo1 elementą ir išsaugoti jį rezultate. Priskyrę, mes padidiname poziciją pos 1 pos++,.

Taip pat mes darome tą patį masyvą2 ir kiekvieną elementą kaupiame rezultate pradedant nuo pozicijos po masyvu1.

Čia yra lygiavertis „Java“ kodas: „Java“ programa sujungia du masyvus.

Įdomios straipsniai...