Menu
CoddyTech

Menyalin array

Termasuk bagian Dasar-Dasar dalam perjalanan C# di Coddy. Pelajaran 58 dari 70.

Untuk menyalin elemen dari satu array ke array lain, gunakan Array.Copy. Fungsi ini menerima lima argumen:

Array.Copy(source, sourceIndex, destination, destinationIndex, length);

Fungsi ini mengambil length elemen dari source, dimulai dari sourceIndex, lalu menuliskannya ke destination, dimulai dari destinationIndex. Array tujuan harus sudah ada dan ukurannya harus cukup.

Argumen terakhir adalah jumlah: berapa banyak elemen yang akan disalin, bukan tempat untuk berhenti.

int[] scores = {90, 75, 60, 85};
int[] firstTwo = new int[2];
Array.Copy(scores, 0, firstTwo, 0, 2);
// firstTwo akan berisi {90, 75}

destinationIndex adalah tempat elemen pertama yang disalin diletakkan. Menggunakan source.Length sebagai jumlah akan menyalin seluruh array, berapa pun ukurannya:

int[] source = {1, 2, 3};
int[] destination = new int[6];
Array.Copy(source, 0, destination, 3, source.Length);
// destination akan berisi {0, 0, 0, 1, 2, 3}

Untuk menempatkan satu array setelah array lainnya, salin array kedua ke posisi tempat array pertama berakhir. Posisi itu adalah Length dari array pertama:

int[] first = {1, 2};
int[] second = {7, 8, 9};
int[] all = new int[first.Length + second.Length];
Array.Copy(first, 0, all, 0, first.Length);
Array.Copy(second, 0, all, first.Length, second.Length);
// all akan berisi {1, 2, 7, 8, 9}

Jika kedua array dimulai dari indeks 0, ada bentuk yang lebih singkat, Array.Copy(source, destination, length):

int[] source = {4, 5, 6, 7};
int[] destination = new int[3];
Array.Copy(source, destination, 3);
// destination akan berisi {4, 5, 6}
challenge icon

Tantangan

Mudah

Buat method bernama AddToEnd yang menerima array berisi string dan sebuah string item. Method ini mengembalikan array baru yang berisi setiap elemen dari array dalam urutan yang sama, dengan item ditambahkan di akhir.

Contohnya, AddToEnd(new string[] {"a", "b", "c"}, "d") mengembalikan ["a", "b", "c", "d"].

Gunakan Array.Copy() untuk menyalin elemen ke dalam array baru.

Format input (2 baris):

  • Baris 1: elemen array yang dipisahkan dengan koma (misalnya, a,b,c)
  • Baris 2: item yang akan ditambahkan (misalnya, d)

Format output: elemen array baru yang dipisahkan dengan koma dan spasi (misalnya, a, b, c, d)

Coba sendiri

using System;

public class Program {
    public static string[] AddToEnd(string[] arr, string item) {
        // Tulis kodemu di sini
    }

    public static void Main(string[] args) {
        string[] arr = Console.ReadLine().Split(',');
        string item = Console.ReadLine();
        string[] result = AddToEnd(arr, item);
        Console.WriteLine(string.Join(", ", result));
    }
}
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Dasar-Dasar

Latihan sendiri: Compiler C# online