Nama pembeli, alamat email, pesan notifikasi — teks adalah data yang paling sering diproses program. Tipe string menampung rangkaian karakter Unicode dan menjadi contoh reference type yang paling sering kita pakai sehari-hari. Bab ini membahas operasi dasar string beserta satu sifat penting: string bersifat immutable.
Operasi Dasar String #
string namaDepan = "Budi";
string namaBelakang = "Santoso";
string namaLengkap = namaDepan + " " + namaBelakang;
Console.WriteLine(namaLengkap);
Console.WriteLine(namaLengkap.Length);
Console.WriteLine(namaLengkap.ToUpper());
Console.WriteLine(namaLengkap.Substring(0, 4));
Console.WriteLine(namaLengkap.Contains("Santoso"));Output yang Dihasilkan:
Budi Santoso
12
BUDI SANTOSO
Budi
TrueMari kita telaah baris demi baris:
- Baris 3 (
string namaLengkap = namaDepan + " " + namaBelakang;): Operator+tidak hanya untuk angka; pada string, operator tersebut menyambung teks. Hasil penyambungannya"Budi Santoso". - Baris 5 (
namaLengkap.Length): PropertiLengthmelaporkan jumlah karakter;"Budi Santoso"berisi 12 karakter termasuk satu spasi. - Baris 6 (
namaLengkap.ToUpper()): Method mengembalikan salinan berhuruf kapital:BUDI SANTOSO. - Baris 7 (
namaLengkap.Substring(0, 4)):Substringmengambil bagian teks mulai indeks 0 sebanyak 4 karakter:Budi. Indeks string dimulai dari 0. - Baris 8 (
namaLengkap.Contains("Santoso")): Method melaporkan apakah teks memuat substring tertentu; hasilnya bertipebool.
String Bersifat Immutable #
Isi string tidak dapat diubah setelah string dibuat (immutable). Method seperti ToUpper() tidak mengubah string asal; method tersebut mengembalikan string baru. Hasil yang tidak disimpan langsung terbuang:
string teks = "Siti";
teks.ToUpper();
Console.WriteLine(teks);
string teksBaru = teks.ToUpper();
Console.WriteLine(teksBaru);
string terformat = " Siti ";
Console.WriteLine(terformat.Trim());Output yang Dihasilkan:
Siti
SITI
SitiMari kita telaah:
- Baris 2 (
teks.ToUpper();): Method mengembalikanSITI, tetapi hasilnya tidak ditampung; string asal tetapSiti. - Baris 4-5: Hasil method kini disimpan ke
teksBaru, sehingga pencetakan menampilkanSITI. - Baris 7-8 (
terformat.Trim()):Trimmengembalikan salinan tanpa spasi di awal dan akhir; string asal tidak tersentuh.
Pola yang sama berlaku untuk Replace, ToLower, dan method string lainnya: semuanya mengembalikan string baru. Untuk mempertahankan hasil, simpan kembaliannya ke sebuah variable.
Escape Sequence di dalam String #
Sama seperti char, string mendukung escape sequence. Yang paling sering dipakai: \" untuk menyisipkan tanda petik dua tanpa menutup string, dan \\ untuk backslash:
string sapaan = "Halo, \"Budi\"!";
Console.WriteLine(sapaan);Output yang Dihasilkan:
Halo, "Budi"!Bab Literal pada section sebelumnya sudah membahas string verbatim (@"...") dan raw string ("""...""") untuk teks yang banyak memakai backslash atau tanda petik.