Bagaimana saya bisa menyalin bagian dari array ke array lain?
Anggap saya mengalami
int[] a = {1,2,3,4,5};
Sekarang jika saya memberikan indeks awal dan indeks akhir array a
itu harus disalin ke array lain.
Seperti jika saya memberikan indeks awal sebagai 1 dan indeks akhir sebagai 3, elemen 2, 3, 4 harus disalin dalam array baru.
Lihat pertanyaan ini . LINQ Take () dan Skip () adalah jawaban yang paling populer, dan juga Array.CopyTo ().
Metode ekstensi konon lebih cepat dijelaskan di sini .
sumber
Di mana Array adalah kelas yang memiliki metode Salin, yang menyalin elemen array ke b array.
Saat menyalin dari satu array ke array lain, Anda harus memberikan tipe data yang sama ke array lain yang Anda salin.
sumber
Catatan: Saya menemukan pertanyaan ini mencari salah satu langkah dalam jawaban cara mengubah ukuran array yang ada.
Jadi saya pikir saya akan menambahkan informasi itu di sini, kalau-kalau ada orang lain yang mencari cara melakukan salinan berkisar sebagai jawaban parsial untuk pertanyaan mengubah ukuran array.
Bagi siapa pun yang menemukan pertanyaan ini mencari hal yang sama dengan saya, sangat sederhana:
di mana T adalah tipe, yaitu di mana arrayVariable dideklarasikan:
Metode itu menangani cek nol, serta newSize == oldSize tidak memiliki efek, dan tentu saja menangani kasus di mana salah satu array lebih panjang dari yang lainnya.
Lihat artikel MSDN untuk lebih lanjut.
sumber
Jika Anda ingin menerapkan metode Array.Copy Anda sendiri .
Metode statis yang merupakan tipe generik.
Implementasi metode batas.
sumber