Merhaba, değerli Jetto Net forumu üyeleri!
Bir önceki yazıda Java'da Enum'ların temel özelliklerini ve kullanımı anlatmıştım. Bu yazıda ise yapıcı metotlar, alanlar ve metotlar ekleyerek enum ile her gün için sıcaklık değerleri tutacak ve bu değerlere göre farklı işlemler yapacak basit bir program yapacağız.
O zaman başlayalım:
Öncelikle bir enum classı oluşturalım ve değerleri atamaya başlayalım:
enum Gunler {
// Her bir günün yanına sıcaklığı yazıyoruz.
PAZARTESI(25),
SALI(28),
CARSAMBA(30),
PERSEMBE(27),
CUMA(26),
CUMARTESI(24),
PAZAR(22);
private int sicaklik;
Gunler(int sicaklik) {
this.sicaklik = sicaklik;
}
public int getSicaklik() {
return sicaklik;
}
public String havaDurumu() {
if (sicaklik < 20) {
return "Soğuk";
} else if (sicaklik >= 20 && sicaklik < 30) {
return "Ilık";
} else {
return "Sıcak";
}
}
}
Daha Çok Göster
Burada her bir gün için sabit değer olarak gün ismini ve bu sabit değerlere karşılık gelen sıcaklık değerlerini tanımladım. Yapıcı metot (Gunler(int sicaklik)), enum sabitleri oluşturulduğunda sıcaklık değerlerini atamak için kullanılacaktır.
sicaklik alanı, her günün sıcaklık değerini tutacak. getSicaklik() metodu sicaklik değişkenini döndürecek(getter). havaDurumu() metodu ise sıcaklık durumuna göre değer döndürecek.
Artık main metodu ile enum sınıfından günü alarak sıcaklık değerini döndürebiliriz:
public class Main {
public static void main(String[] args) {
Gunler bugun = Gunler.PAZARTESI;
System.out.println("Bugün: " + bugun);
System.out.println("Sıcaklık: " + bugun.getSicaklik() + "°C");
System.out.println("Hava Durumu: " + bugun.havaDurumu());
}
}
bugün degiskenine enum classımızdan bir değer atadım. getSicaklik() ve havaDurumu() metotlarını ile bugünün sıcaklık değerini ve hava durumunu çektik. Programı çalıştırdığımızda konsolda çıktısı aşağıdaki gibi olmaktadır:
Özelle, bu örnekte yapıcılar, alanlar ve yöntemler ekleyerek bir enumu nasıl daha güçlü hale getirileceğini gördük. Bu sayede enumları yalnızca değişmez değerleri temsil etmek için değil, aynı zamanda bu değerlerle ilişkili ek bilgileri kaydetmek ve işlemleri gerçekleştirmek için de kullanabilirsiniz.
Umarım bu içerik ile Enum'ları daha iyi anlamışsınızdır. Yorumlar kısmında sorularınızı veya görüşlerinizi yazabilirsiniz.
İyi Kodlamalar!