Elemen Tuple Bernama
Beri nama yang bermakna pada field tuple.
Elemen Tuple Bernama adalah pelajaran C# Academy gratis di CoddyKit. Ini adalah pelajaran 2 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar C# Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus C# Academy mencakup 4 pelajaran total.
Memberi Nama Elemen Tupel
Alih-alih menggunakan Item1/Item2, Anda dapat memberi nama pada elemen tupel agar kode lebih mudah dibaca: (int Id, string Name).
using System;
class Program
{
static void Main()
{
(int Id, string Name) user = (1, "Ada");
Console.WriteLine(user.Id + ": " + user.Name);
}
}Nama dalam Nilai Harfiah
Anda dapat menambahkan nama secara langsung saat membuat tupel, dan kompilator akan mengingatnya.
using System;
class Program
{
static void Main()
{
var point = (X: 3, Y: 4);
Console.WriteLine("X=" + point.X + ", Y=" + point.Y);
}
}Mengapa Nama Meningkatkan Kejelasan
Elemen bernama menjelaskan maksud kode. result.Total jauh lebih jelas daripada result.Item2.
using System;
class Program
{
static void Main()
{
var result = (Count: 3, Total: 150);
Console.WriteLine("Avg: " + ((double)result.Total / result.Count).ToString("0.0"));
}
}Nama Adalah Label Opsional
Nama elemen tupel merupakan kemudahan pada waktu kompilasi. Di balik layar, bidangnya tetap Item1, Item2; kedua nama tersebut dapat digunakan.
using System;
class Program
{
static void Main()
{
var p = (Age: 30, City: "Rome");
Console.WriteLine(p.Age + " / " + p.Item1); // same value
Console.WriteLine(p.City + " / " + p.Item2);
}
}Tupel Bernama dalam Tanda Tangan Metode
Suatu metode dapat mendeklarasikan tupel bernama sebagai parameter atau tipe pengembalian, sehingga antarmuka pemrograman aplikasinya menjelaskan dirinya sendiri.
using System;
class Program
{
static (int Sum, int Product) Compute(int a, int b)
{
return (a + b, a * b);
}
static void Main()
{
var r = Compute(3, 4);
Console.WriteLine("Sum=" + r.Sum + ", Product=" + r.Product);
}
}Menggabungkan Nama dan Posisi
Anda dapat memberi nama pada beberapa elemen dan membiarkan elemen lainnya berdasarkan posisi, meskipun memberi nama pada semuanya lebih jelas.
using System;
class Program
{
static void Main()
{
var data = (Id: 7, "guest", Active: true);
Console.WriteLine(data.Id + ", " + data.Item2 + ", " + data.Active);
}
}Nama dengan Anggota yang Disimpulkan
Saat Anda membuat tupel dari variabel bernama, C# dapat secara otomatis menyimpulkan nama elemen yang sesuai.
using System;
class Program
{
static void Main()
{
int width = 10, height = 5;
var size = (width, height); // names inferred from variables
Console.WriteLine("w=" + size.width + ", h=" + size.height);
}
}Memperbarui Elemen Bernama
Elemen bernama tetap merupakan bidang yang dapat ditulis, sehingga Anda dapat menetapkannya ulang saat program berjalan.
using System;
class Program
{
static void Main()
{
var game = (Player: "A", Score: 0);
game.Score += 25;
Console.WriteLine(game.Player + " scored " + game.Score);
}
}Tupel Bernama dalam Daftar
Daftar tupel bernama hampir terbaca seperti baris-baris dalam tabel.
using System;
using System.Collections.Generic;
class Program
{
static void Main()
{
var people = new List<(string Name, int Age)>
{
("Ann", 30),
("Bob", 25)
};
foreach (var p in people)
Console.WriteLine(p.Name + " is " + p.Age);
}
}Kesetaraan dengan Nama
Nama tidak memengaruhi kesetaraan. Dua tupel sama ketika nilainya cocok, terlepas dari nama elemennya.
using System;
class Program
{
static void Main()
{
var a = (X: 1, Y: 2);
var b = (A: 1, B: 2);
Console.WriteLine(a == b); // True - values match
}
}Menggabungkan Semuanya
Tupel bernama menggabungkan keringanan tupel dengan keterbacaan bidang bernama, sehingga sangat cocok untuk nilai yang dikembalikan metode dengan jelas.
using System;
class Program
{
static (bool Ok, string Message) Validate(int age)
{
if (age < 0) return (false, "Age cannot be negative");
return (true, "Valid");
}
static void Main()
{
var v = Validate(-1);
Console.WriteLine(v.Ok + ": " + v.Message);
}
}Uji Cepat
Uji pemahaman Anda tentang elemen tupel bernama.
Rangkuman
Elemen tupel bernama seperti (int Id, string Name) membuat tupel menjelaskan dirinya sendiri; Anda mengaksesnya berdasarkan nama, bukan melalui Item1. Nama dapat dideklarasikan, disimpulkan dari variabel, dan digunakan dalam tanda tangan metode. Nama tersebut adalah label pada waktu kompilasi dan tidak memengaruhi kesetaraan, yang membandingkan nilai.
using System;
class Program
{
static void Main()
{
var user = (Id: 42, Name: "Kai");
Console.WriteLine(user.Name + " #" + user.Id);
}
}Pertanyaan yang Sering Diajukan
Apakah pelajaran “Elemen Tuple Bernama” gratis?
Ya — teks lengkap “Elemen Tuple Bernama” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus C# Academy, upgrade ke CoddyKit PRO. Kursus C# Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Elemen Tuple Bernama”?
Beri nama yang bermakna pada field tuple. Kamu berlatih C# Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai C# Academy?
Tidak diperlukan pengalaman sebelumnya. C# Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 4.
Berapa lama pelajaran “Elemen Tuple Bernama” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran C# Academy ini?
Ya. Setiap pelajaran C# Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Dasar-Dasar Tuple Nilai
- Elemen Tuple Bernama
- Dekonstruksi
- Tuple sebagai Nilai Kembalian Metode