Program Java untuk Menggabungkan Dua Array

Dalam program ini, Anda akan belajar menggabungkan dua array di Java menggunakan salinan array dan tanpa itu.

Untuk memahami contoh ini, Anda harus memiliki pengetahuan tentang topik pemrograman Java berikut:

  • Array Jawa
  • Java untuk setiap Loop

Contoh 1: Gabungkan Dua Array menggunakan arraycopy

 import java.util.Arrays; public class Concat ( public static void main(String() args) ( int() array1 = (1, 2, 3); int() array2 = (4, 5, 6); int aLen = array1.length; int bLen = array2.length; int() result = new int(aLen + bLen); System.arraycopy(array1, 0, result, 0, aLen); System.arraycopy(array2, 0, result, aLen, bLen); System.out.println(Arrays.toString(result)); ) )

Keluaran

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

Dalam program di atas, kita memiliki dua array integer array1 dan array2.

Untuk menggabungkan (menggabungkan) dua array, kami menemukan panjangnya masing-masing disimpan dalam aLen dan bLen. Kemudian, kita buat hasil array integer baru dengan panjang aLen + bLen.

Sekarang, untuk menggabungkan keduanya, kami menyalin setiap elemen di kedua array untuk menghasilkan dengan menggunakan arraycopy()fungsi.

The arraycopy(array1, 0, result, 0, aLen)fungsi, dalam hal sederhana, mengatakan program untuk menyalin array1 mulai dari indeks 0hasil dari indeks 0ke alen.

Demikian juga, for arraycopy(array2, 0, result, aLen, bLen)memberi tahu program untuk menyalin array2 mulai dari indeks 0ke resultdari indeks aLen ke bLen.

Contoh 2: Gabungkan Dua Array tanpa menggunakan salinan larik

 import java.util.Arrays; public class Concat ( public static void main(String() args) ( int() array1 = (1, 2, 3); int() array2 = (4, 5, 6); int length = array1.length + array2.length; int() result = new int(length); int pos = 0; for (int element : array1) ( result(pos) = element; pos++; ) for (int element : array2) ( result(pos) = element; pos++; ) System.out.println(Arrays.toString(result)); ) )

Keluaran

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

Dalam program di atas, alih-alih menggunakan arraycopy, kita secara manual menyalin setiap elemen dari kedua array array1 dan array2 ke hasil.

Kami menyimpan total panjang yang dibutuhkan untuk hasil, yaitu array1.length + array2. length. Kemudian, kami membuat hasil array baru dari panjangnya.

Sekarang, kita menggunakan for-each loop untuk melakukan iterasi melalui setiap elemen array1 dan menyimpannya dalam hasil. Setelah menetapkannya, kami meningkatkan posisi pos sebesar 1 pos++,.

Demikian juga, kami melakukan hal yang sama untuk array2 dan menyimpan setiap elemen dalam hasil mulai dari posisi setelah array1.

Artikel yang menarik...