Anggota Berbentuk Ekspresi
Tulis properti dan metode yang ringkas.
Anggota Berbentuk Ekspresi adalah pelajaran C# Academy gratis di CoddyKit. Ini adalah pelajaran 3 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.
Sintaks yang Lebih Ringkas
Sintaks berbentuk ekspresi menggunakan => untuk mendefinisikan anggota sebagai satu ekspresi, menggantikan isi lengkap { ... }. Sintaks ini membuat anggota pendek menjadi ringkas dan mudah dibaca.
using System;
class Greeter
{
public string Hello() => "Hi there!";
}
class Program
{
static void Main()
{
var g = new Greeter();
Console.WriteLine(g.Hello());
}
}Metode Berbentuk Ekspresi
Metode apa pun yang isinya hanya satu ekspresi dapat menggunakan =>. Hasil ekspresi tersebut menjadi nilai yang dikembalikan.
using System;
class MathHelper
{
public int Square(int x) => x * x;
public int Add(int a, int b) => a + b;
}
class Program
{
static void Main()
{
var m = new MathHelper();
Console.WriteLine(m.Square(6));
Console.WriteLine(m.Add(3, 4));
}
}Properti Hanya-Baca Berbentuk Ekspresi
Properti terhitung hanya-baca dapat menggunakan => sebagai pengganti get { return ...; }.
using System;
class Rectangle
{
public double Width { get; set; }
public double Height { get; set; }
public double Area => Width * Height;
}
class Program
{
static void Main()
{
var r = new Rectangle { Width = 4, Height = 5 };
Console.WriteLine("Area: " + r.Area);
}
}Pengambil dan Penyetel Berbentuk Ekspresi
Anda juga dapat memberikan isi ekspresi tersendiri pada aksesor get dan set, yang berguna saat menggunakan bidang pendukung.
using System;
class Person
{
private string _name;
public string Name
{
get => _name;
set => _name = value.Trim();
}
}
class Program
{
static void Main()
{
var p = new Person();
p.Name = " Niki ";
Console.WriteLine("[" + p.Name + "]");
}
}Mengembalikan String Hasil Perhitungan
Properti berbentuk ekspresi sangat cocok untuk nilai turunan yang diformat, seperti nama lengkap atau label.
using System;
class Customer
{
public string First { get; set; }
public string Last { get; set; }
public string Display => First + " " + Last;
}
class Program
{
static void Main()
{
var c = new Customer { First = "Ada", Last = "Lovelace" };
Console.WriteLine(c.Display);
}
}Bentuk Ekspresi dengan Kondisi
Satu ekspresi dapat menyertakan operator kondisional, sehingga logika percabangan tetap berada dalam satu baris.
using System;
class Account
{
public decimal Balance { get; set; }
public string Status => Balance >= 0 ? "OK" : "Overdrawn";
}
class Program
{
static void Main()
{
var a = new Account { Balance = -20m };
Console.WriteLine(a.Status);
}
}Metode Berbentuk Ekspresi tanpa Nilai Kembalian
Metode yang melakukan suatu tindakan tanpa mengembalikan nilai juga dapat berbentuk ekspresi jika tindakannya hanya terdiri dari satu pernyataan.
using System;
class Logger
{
public void Log(string msg) => Console.WriteLine("[LOG] " + msg);
}
class Program
{
static void Main()
{
var log = new Logger();
log.Log("Started");
}
}Konstruktor Berbentuk Ekspresi
Konstruktor dengan satu penetapan juga dapat menggunakan sintaks panah.
using System;
class Point
{
public int X { get; }
public Point(int x) => X = x;
}
class Program
{
static void Main()
{
var p = new Point(7);
Console.WriteLine("X = " + p.X);
}
}Kapan Tidak Menggunakannya
Isi berbentuk ekspresi hanya untuk satu ekspresi. Jika Anda memerlukan beberapa pernyataan, perulangan, atau percabangan validasi, gunakan isi blok biasa.
using System;
class Calculator
{
// Single expression -> arrow is fine
public int Triple(int n) => n * 3;
// Multiple statements -> use a block
public int SumTo(int n)
{
int total = 0;
for (int i = 1; i <= n; i++) total += i;
return total;
}
}
class Program
{
static void Main()
{
var c = new Calculator();
Console.WriteLine(c.Triple(4));
Console.WriteLine(c.SumTo(5));
}
}Menggabungkan Beberapa Bentuk dalam Satu Kelas
Kelas kecil dapat menggunakan sintaks panah untuk hampir setiap anggotanya, sehingga secara signifikan mengurangi kode repetitif.
using System;
class Temperature
{
public double Celsius { get; set; }
public double Fahrenheit => Celsius * 9 / 5 + 32;
public double Kelvin => Celsius + 273.15;
public override string ToString() => Celsius + "C";
}
class Program
{
static void Main()
{
var t = new Temperature { Celsius = 25 };
Console.WriteLine(t + " = " + t.Fahrenheit + "F = " + t.Kelvin + "K");
}
}Menggabungkan Semuanya
Gunakan anggota berbentuk ekspresi agar pengambil sederhana, pembantu, dan metode satu baris tetap bersih, sementara isi blok digunakan untuk logika yang sebenarnya.
using System;
class Order
{
public int Quantity { get; set; }
public decimal UnitPrice { get; set; }
public decimal Total => Quantity * UnitPrice;
public bool IsLarge => Quantity > 10;
}
class Program
{
static void Main()
{
var o = new Order { Quantity = 12, UnitPrice = 9.99m };
Console.WriteLine("Total: " + o.Total + ", Large: " + o.IsLarge);
}
}Uji Singkat
Ujilah pemahaman Anda tentang anggota berbentuk ekspresi.
Ringkasan
Anggota berbentuk ekspresi menggunakan => untuk mendefinisikan anggota dengan satu ekspresi. Anggota ini dapat digunakan pada metode, properti hanya-baca, aksesor get/set individual, dan bahkan konstruktor. Gunakan bentuk ini untuk baris tunggal yang ringkas; beralihlah ke isi blok kapan pun Anda memerlukan beberapa pernyataan.
using System;
class Demo
{
public int N { get; set; }
public int Doubled => N * 2;
public string Label() => "N is " + N;
}
class Program
{
static void Main()
{
var d = new Demo { N = 9 };
Console.WriteLine(d.Label() + ", doubled = " + d.Doubled);
}
}Pertanyaan yang Sering Diajukan
Apakah pelajaran “Anggota Berbentuk Ekspresi” gratis?
Ya — teks lengkap “Anggota Berbentuk Ekspresi” 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 “Anggota Berbentuk Ekspresi”?
Tulis properti dan metode yang ringkas. 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 3 dari 4.
Berapa lama pelajaran “Anggota Berbentuk Ekspresi” 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
- Properti yang Diimplementasikan Otomatis
- Properti Lengkap dengan Field Pendukung
- Anggota Berbentuk Ekspresi
- Indexer