Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Tutorial pengantar ini memberikan pengenalan bahasa C# dan dasar-dasar System.Collections.Generic.List<T> kelas.
Tutorial ini mengajarkan Anda C#. Anda menulis kode C# dan melihat hasil kompilasi dan menjalankan kode tersebut. Ini berisi serangkaian pelajaran yang membuat, memodifikasi, dan menjelajahi koleksi. Anda bekerja terutama dengan List<T> kelas .
Tip
Baru dalam pemrograman? Bekerja melalui setiap bagian secara berurutan. Berasal dari bahasa lain? Jika Anda sudah mengetahui array atau daftar dinamis, lewati dasar-dasar dan fokus pada pencarian dan pengurutan, daftar jenis lain, dan tantangannya.
Di tutorial ini, Anda akan:
- Luncurkan GitHub Codespace dengan lingkungan pengembangan C#.
- Buat berbagai jenis daftar.
- Ubah isi daftar.
- Cari dan urutkan daftar.
Prasyarat
Anda harus memiliki salah satu opsi berikut:
- Akun GitHub untuk menggunakan GitHub Codespaces. Jika Anda belum memilikinya, Anda dapat membuat akun gratis di GitHub.com.
- Komputer dengan alat berikut yang sudah terpasang:
Contoh daftar dasar
Untuk memulai GitHub Codespace dengan lingkungan tutorial, buka jendela browser ke repositori codespace tutorial . Pilih tombol Kode hijau, dan pilih tab Codespace. Kemudian pilih + tanda untuk membuat Codespace baru menggunakan lingkungan ini. Jika Anda menyelesaikan tutorial lain dalam seri ini, Anda dapat membuka codespace tersebut alih-alih membuat yang baru.
Saat codespace Anda dimuat, buat file baru di folder tutorial bernama lists.cs.
Buka file baru Anda.
Ketik atau salin kode berikut ke dalam lists.cs:
List<string> names = ["<name>", "Ana", "Felipe"]; foreach (var name in names) { Console.WriteLine($"Hello {name.ToUpper()}!"); }Jalankan kode dengan mengetik perintah berikut di jendela terminal:
cd tutorials dotnet lists.cs
Anda membuat daftar string, menambahkan tiga nama ke daftar tersebut, dan mencetak nama di semua huruf besar. Anda menggunakan konsep yang Anda pelajari dalam tutorial sebelumnya untuk mengulang daftar.
Kode untuk menampilkan nama menggunakan fitur interpolasi string . Saat Anda mendahului string dengan $ karakter , Anda dapat menyematkan kode C# dalam deklarasi string. String aktual menggantikan kode C# tersebut dengan nilai yang dihasilkannya. Dalam contoh ini, ia menggantikan {name.ToUpper()} dengan setiap nama, dikonversi ke huruf kapital, karena Anda memanggil metode String.ToUpper.
Mari kita terus menjelajah.
Mengubah isi daftar
Koleksi yang Anda buat menggunakan jenis .List<T> Jenis ini menyimpan urutan elemen. Anda menentukan jenis elemen di antara tanda kurung sudut.
Salah satu aspek penting dari jenis ini List<T> adalah dapat tumbuh atau menyusut, sehingga Anda dapat menambahkan atau menghapus elemen. Anda dapat melihat hasilnya dengan memodifikasi konten setelah Menampilkan kontennya.
Tambahkan kode berikut setelah kode yang sudah Anda tulis (perulangan yang mencetak isi):
Console.WriteLine(); names.Add("Maria"); names.Add("Bill"); names.Remove("Ana"); foreach (var name in names) { Console.WriteLine($"Hello {name.ToUpper()}!"); }Anda menambahkan dua nama lagi ke akhir daftar. Anda juga menghapus satu. Output dari blok kode ini menunjukkan konten awal, lalu mencetak baris kosong dan konten baru.
Jenis ini List<T> juga memungkinkan Anda mereferensikan item individual menurut indeks. Anda mengakses item dengan menggunakan
[token dan]. Tambahkan kode berikut setelah apa yang sudah Anda tulis dan coba:Console.WriteLine($"My name is {names[0]}."); Console.WriteLine($"I've added {names[2]} and {names[3]} to the list.");Anda tidak dapat mengakses melewati akhir daftar. Anda dapat memeriksa berapa lama daftar tersebut dengan menggunakan Count properti .
Tambahkan kode berikut:
Console.WriteLine($"The list has {names.Count} people in it");Ketik
dotnet lists.cslagi di jendela terminal untuk melihat hasilnya. Di C#, indeks dimulai pada 0, sehingga indeks valid terbesar adalah satu kurang dari jumlah item dalam daftar.
Untuk informasi selengkapnya tentang indeks, lihat artikel Menjelajahi indeks dan rentang .
Cari dan urutkan daftar
Sampel menggunakan daftar yang relatif kecil, tetapi aplikasi Anda mungkin sering membuat daftar dengan lebih banyak elemen, terkadang berjumlah ribuan. Untuk menemukan elemen dalam koleksi yang lebih besar ini, Anda perlu mencari daftar untuk item yang berbeda. Metode IndexOf mencari item dan mengembalikan indeks item. Jika item tidak ada dalam daftar, IndexOf mengembalikan -1.
Cobalah untuk melihat cara kerjanya. Tambahkan kode berikut setelah apa yang Anda tulis sejauh ini:
var index = names.IndexOf("Felipe"); if (index == -1) { Console.WriteLine($"When an item is not found, IndexOf returns {index}"); } else { Console.WriteLine($"The name {names[index]} is at index {index}"); } index = names.IndexOf("Not Found"); if (index == -1) { Console.WriteLine($"When an item is not found, IndexOf returns {index}"); } else { Console.WriteLine($"The name {names[index]} is at index {index}"); }Anda mungkin tidak tahu apakah item ada dalam daftar, jadi selalu periksa indeks yang dikembalikan oleh IndexOf. Jika ,
-1item tidak ditemukan.Anda juga bisa mengurutkan item dalam daftar Anda. Metode mengurutkan Sort semua item dalam daftar dalam urutan normalnya (menurut abjad untuk string). Tambahkan kode ini dan jalankan lagi:
names.Sort(); foreach (var name in names) { Console.WriteLine($"Hello {name.ToUpper()}!"); }
Daftar tipe lain
Sejauh ini, Anda telah menggunakan jenis string dalam daftar. Mari kita buat List<T> menggunakan jenis yang berbeda. Mari kita buat sekumpulan angka.
Tambahkan kode berikut di akhir file sumber Anda:
List<int> fibonacciNumbers = [1, 1];Kode tersebut membuat daftar bilangan bulat dan mengatur dua bilangan bulat pertama ke nilai 1. Urutan Fibonacci, urutan angka, dimulai dengan dua 1. Setiap nomor Fibonacci berikutnya ditemukan dengan mengambil jumlah dari dua angka sebelumnya.
Tambahkan kode ini:
var previous = fibonacciNumbers[fibonacciNumbers.Count - 1]; var previous2 = fibonacciNumbers[fibonacciNumbers.Count - 2]; fibonacciNumbers.Add(previous + previous2); foreach (var item in fibonacciNumbers) { Console.WriteLine(item); }Ketik
dotnet lists.csdi jendela terminal untuk melihat hasilnya.
Tantangan
Lihat apakah Anda dapat menyusun beberapa konsep dari ini dan pelajaran sebelumnya. Perluas pada apa yang telah Anda kembangkan sejauh ini dengan bilangan Fibonacci. Cobalah untuk menulis kode untuk menghasilkan 20 angka pertama dalam urutan. (Sebagai petunjuk, nomor Fibonacci ke-20 adalah 6765.)
Apakah Anda mengembangkan sesuatu seperti kode ini?
List<int> fibonacciNumbers = [1, 1];
while (fibonacciNumbers.Count < 20)
{
var previous = fibonacciNumbers[fibonacciNumbers.Count - 1];
var previous2 = fibonacciNumbers[fibonacciNumbers.Count - 2];
fibonacciNumbers.Add(previous + previous2);
}
foreach (var item in fibonacciNumbers)
{
Console.WriteLine(item);
}
Dengan setiap perulangan perulangan, Anda mengambil dua bilangan bulat terakhir dalam daftar, menjumlahkannya, dan menambahkan nilai tersebut ke daftar. Perulangan diulang hingga Anda menambahkan 20 item ke daftar.
Anda menyelesaikan tutorial tentang daftar.
Membersihkan sumber daya
GitHub secara otomatis menghapus Codespace Anda setelah 30 hari tidak aktif. Jika Anda berencana untuk menjelajahi lebih banyak tutorial dalam seri ini, Anda dapat membiarkan Codespace Anda diprovisikan. Jika Anda siap untuk mengunjungi situs .NET untuk mengunduh .NET SDK, Anda dapat menghapus Codespace Anda. Untuk menghapus Codespace Anda, buka jendela browser dan navigasikan ke Codespace Anda. Anda akan melihat daftar codespace Anda di jendela. Pilih tiga titik (...) dalam entri untuk ruang kode tutorial pelajari dan pilih hapus.
Langkah selanjutnya
Lanjutkan ke tutorial berikutnya dalam seri ini:
Atau jelajahi topik terkait dalam Dasar-Dasar C#:
-
Generik dalam C# — Pahami sintaks yang
<T>Anda gunakan di seluruh tutorial ini. - Gambaran umum LINQ — Kueri dan transformasi koleksi dengan menggunakan Kueri Terintegrasi Bahasa.
- Apa yang dapat Anda bangun dengan C# — Lihat jenis aplikasi yang dapat Anda buat dengan apa yang Anda pelajari.
- Memilih jenis koleksi
- Jenis koleksi yang umum digunakan
- Kapan menggunakan koleksi generik