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}Tantangan
MudahBuat 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));
}
}Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
4Operator Bagian 1
Operator AritmetikaOperator ModuloKenaikan/PenurunanKenaikan/Penurunan SetelahnyaPintasan Aritmetika7Input dan Output Dasar
Output DasarInterpolasi stringMembaca inputMenguraiRangkuman, Sampai 120Rangkuman, Benar atau Salah5Operator Bagian 2
Operator PerbandinganOperator Logika Bagian 1Operator Logika Bagian 2Ulasan: Logika SederhanaOperator Logika Bagian 311Dasar-Dasar array
Mendeklarasikan arrayMengakses elemenMengubah arrayMenyalin arrayMethod pada arrayRangkuman: Array Hasil KaliEdit Rangkuman: Array TerbalikLatihan sendiri: Compiler C# online