iletişim bilgileri http://iletisimbilgileri.org//iletişim bilgileri

Java – Enumarations örnekler

Geçen makalede enumarations hakkında bilgiler vermiştim. Şimdi ise biraz daha komplike birkaç ufak program yazacağız. Enum yapılarının daha iyi anlaşılacağını düşünüyorum. Hemen eclipse’de bir proje açıyoruz ve kodlarımızı yazıyoruz.

enum meyvefiyatlari {
elma(10), ayva(9), muz(12), mango(15);
private int ucret;
//enum yapıcısı
meyvefiyatlari(int p) { ucret = p; }
int ucretal() { return ucret; }
}
class program {
public static void main(String args[]) {
meyvefiyatlari f;
System.out.println("mangonun fiyatı " +
meyvefiyatlari.mango.ucretal() +
" lira.\n");
//bütün meyvelerin fiyatini goster.
System.out.println("Bütün meyvelerin ücretleri:");
for(meyvefiyatlari a : meyvefiyatlari.values())
System.out.println(a + " fiyati: " + a.ucretal() +
" lira.");
}
}

Üstteki programdaki en önemli kısım enum meyvefiyatlarının bir yapıcısının olmasıdır. Bu yapıcıdaki metodumuz ile de oluşturduğumuz meyvelerin fiyatlarını alıyoruz.

Çıktısı şu şekilde:

mangonun fiyatı 15 lira.
Bütün meyvelerin ücretleri:
elma fiyati: 10 lira.
ayva fiyati: 9 lira.
muz fiyati: 12 lira.
mango fiyati: 15 lira.

Şimdi gelin enumarations ile bir program daha yazalım.


import java.util.Random;
enum Notlar {
AA, BB, CC, DD, EE, FF
}
class Soru {
Random rand = new Random();
Notlar not() {
int soru = (int) (100 * rand.nextInt());
if (soru < 15)
return Notlar.FF;
else if (soru < 30)
return Notlar.EE;
else if (soru < 50)
return Notlar.DD;
else if (soru < 60)
return Notlar.CC;
else if (soru < 80)
return Notlar.BB;
else
return Notlar.AA;
}
}
class Enumprogram {
static void cevap(Notlar not) {
switch(not) {
case AA:
System.out.println("AA");
break;
case BB:
System.out.println("BB");
break;
case CC:
System.out.println("CC");
break;
case DD:
System.out.println("DD");
break;
case EE:
System.out.println("EE");
break;
case FF:
System.out.println("FF");
break;
}
}
public static void main(String args[]) {
Soru s = new Soru();
cevap(s.not());
cevap(s.not());
cevap(s.not());
cevap(s.not());
cevap(s.not());
}
}

Çıktısı :

AA
AA
AA
FF
AA

Yukarıdaki programda ise 0-100 arası random olarak puan alıyoruz.Soru sınıfındahangi puan aralıklarının bu notları aldığını belirtiyoruz. enumprogram sınıfında ise bu alınan puanlara göre AA,BB,CC,DD,EE,FF notlarından birisi seçiliyor. Main metodunda ise Soru sınıfımıza nesne oluşturarak, bu nesne yardımıylar metodlarımızı çağırıyoruz.

Bir sonraki makalemizde görüşmek dileğiyle…

0,695