Constant atau Konstanta pada Bahasa Pemrograman C#

Constant atau Konstanta pada Bahasa Pemrograman C#
Photo by Danial Igdery / Unsplash

Pernah nggak sih kamu bikin program, tapi ada satu nilai yang harus dipakai berkali-kali dan nggak boleh berubah? Misalnya nilai pi (π) = 3.14159 atau kecepatan cahaya dalam vakum. Nah, di sinilah konstanta (constant) dalam C# berperan penting.

Konstanta adalah variabel spesial yang nilainya tetap dan nggak bisa diubah setelah dideklarasikan. Jadi, kalau kamu butuh nilai yang nggak boleh berubah di sepanjang program, gunakan konstanta biar lebih aman dan rapi.

1. Apa Itu Konstanta dalam C#?

Konstanta dalam C# adalah nilai yang bersifat tetap alias immutable. Saat kita mendeklarasikan sebuah konstanta, nilainya harus langsung ditentukan, dan tidak bisa diubah lagi selama program berjalan.

Di C#, konstanta dideklarasikan dengan kata kunci const.

Contoh deklarasi konstanta:

const double PI = 3.14159;
const int MAKSIMAL_USIA = 100;

Console.WriteLine("Nilai PI: " + PI);
Console.WriteLine("Usia Maksimal: " + MAKSIMAL_USIA);

Kenapa Harus Pakai const?

Biar kode lebih aman – nggak sengaja diubah di tempat lain
Lebih efisien – konstanta disimpan di dalam memori sebagai nilai tetap
Lebih rapi dan mudah dipahami

2. Aturan Deklarasi const di C#

Ada beberapa aturan penting yang perlu kamu perhatiin waktu pakai const:

a) Harus Langsung Diberikan Nilai Awal

Nggak bisa cuma dideklarasikan tanpa nilai, contoh ini salah:

const int x; // ❌ ERROR: konstanta harus langsung punya nilai

Yang benar adalah:

const int x = 10; // ✅

b) Nilainya Nggak Bisa Diubah

Konstanta itu benar-benar "konstan", jadi kalau kamu coba ubah nilainya, bakal error.

const int umur = 25;
umur = 30; // ❌ ERROR: Nilai konstanta tidak bisa diubah

c) Hanya Bisa Pakai Tipe Data Dasar

const hanya bisa digunakan untuk tipe data primitif, seperti:

  • int
  • double
  • string
  • char
  • bool
    Konstanta nggak bisa digunakan untuk tipe array, list, atau objek.

Contoh yang benar:

const string NAMA = "Andi";
const double GRAVITASI = 9.8;

Yang salah:

const int[] angka = { 1, 2, 3 }; // ❌ ERROR: Array tidak bisa pakai const

3. Kapan Harus Menggunakan const?

Kamu sebaiknya menggunakan const kalau ada nilai yang bersifat tetap dan nggak boleh berubah di sepanjang program.

Contoh penggunaan const:

const double PI = 3.14159;
const int MAX_PLAYER = 4;
const string APP_NAME = "MyApp";

Bayangin kalau kamu sering butuh nilai PI di banyak tempat di programmu. Kalau suatu saat kamu ingin pakai nilai dengan lebih banyak angka desimal, cukup ubah di satu tempat aja, nggak perlu cari satu-satu di dalam kode.

4. readonly vs const, Mana yang Harus Dipakai?

Mungkin kamu pernah dengar tentang readonly. Nah, ini mirip dengan const, tapi ada perbedaannya.

Perbedaan const readonly
Bisa diubah setelah deklarasi? ❌ Tidak bisa ✅ Bisa diubah di constructor
Bisa digunakan untuk tipe objek? ❌ Tidak bisa ✅ Bisa digunakan
Nilainya harus diinisialisasi saat deklarasi? ✅ Wajib langsung diberi nilai ✅ Bisa diinisialisasi dalam constructor

Kapan Pakai const?

Gunakan const kalau nilai benar-benar tetap sepanjang program, misalnya:

const double PI = 3.14159;
const string APP_NAME = "C# Mastery";

Kapan Pakai readonly?

Gunakan readonly kalau nilainya bisa berubah, tapi hanya di dalam constructor.

class Contoh
{
    public readonly int ID;
    
    public Contoh(int id)
    {
        ID = id; // Bisa diubah di constructor
    }
}

5. Contoh Program Sederhana dengan const

Sekarang kita buat program sederhana yang pakai konstanta dalam perhitungan luas lingkaran.

using System;

class Program
{
    const double PI = 3.14159;

    static void Main()
    {
        Console.Write("Masukkan jari-jari lingkaran: ");
        double r = Convert.ToDouble(Console.ReadLine());

        double luas = PI * r * r;
        Console.WriteLine("Luas lingkaran: " + luas);
    }
}

Contoh output:

Masukkan jari-jari lingkaran: 7
Luas lingkaran: 153.93791

Kenapa kita pakai const untuk PI?

  • Karena nilai PI itu tetap dan nggak bakal berubah, jadi lebih aman kalau dibuat konstanta.

6. Kesimpulan

  • const adalah variabel yang nilainya tetap dan nggak bisa diubah.
  • Harus langsung diinisialisasi saat deklarasi.
  • Cocok untuk nilai tetap seperti PI, nilai maksimum, atau string konstan.
  • const hanya bisa dipakai untuk tipe data dasar, kalau butuh yang bisa diubah di constructor, pakai readonly.
  • Mempermudah debugging dan bikin kode lebih rapi karena nilainya tidak akan berubah secara tidak sengaja.

Jadi, kalau kamu punya nilai yang bersifat tetap, pastikan untuk selalu gunakan const biar kodingan kamu lebih aman dan profesional!

Read more