Enum

Java da Enum:
Enum(Enumaration) tanımlamaları programlama dillerinde belirli değerlere karşılık gelen sabit değerlerin temsili için kullanılırlar, haftanın günleri, bir şeyin boyutu,ölçüsü vs gibi. Geliştiriciye sağladığı faydalar ise kod okunabilirliğini arttırması, muhtemel değer kümesinin daraltılması ve tip güvenliğini sağlaması dolayısıyla hata payını en aza indirmesi.Daha okunabilir kod için enumlar kullanılmalıdır.


public enum EnumOrnek {

}
class Coffe{
enum Coffee{
 SHORT,TALL,GRAND,VENTI;
 
 
 }
Coffee size;// Bu şekilde Coffee 'size' olarak endeks edebiliriz.

/* Enum bir anahtar kelimedir.
 * Coffees sınıfında bu kadar fazla kod yazacağımıza enum anahtar kelimesinde tanımlamamız yeter.
 */

/*
public static final String TALL = "TALL";
 public static final String VENTI = "VENTİ";

 public static final String GRAND = "GRAND";
//Bu kadar kod yazacağımıza enum kullanarak kod fazlalığını önlemiş olduk.

 public static void main(String[] args) {
  Coffe coffee = new Coffe();
  
 System.out.println(coffee.size.TALL);
 System.out.println(coffee.size.VENTI);
 System.out.println(coffee.size.GRAND);
// Bu şekilde enumları yazdırabiliriz.

}

}

//Enumlara integer değerler de verebiliriz.



public class EnumlaraDevam {

  enum CoffeSize{
  
  SHORT(3),TALL(6),GRAND(8),VENTI(10);
  CoffeSize(int Price)
  {
   this.setPrice(Price);
  }
  public int getPrice() {
   return Price;
  }
  public void setPrice(int price) {
   Price = price;
  }
  private int Price;
 }
 
 
 
 public static void main(String[] args) {
 
  System.out.println(CoffeSize.GRAND);
  System.out.println(CoffeSize.SHORT.Price);
  //Burada Price çağırdığımız zaman SHORT'a tanımladığımız sayıyı çağırmış oluyoruz.
  System.out.println(CoffeSize.TALL);
  System.out.println(CoffeSize.VENTI.Price);
  
  for (CoffeSize cs:CoffeSize.values())
//For da : yazdırma tanımlı bir dizi ya da sayı topluluğu varsa bütün değerlerini yazdırır.
  {
   System.out.println(cs + " " + cs.getPrice() );
  }
//Burada SHORT 3 TALL 6 GRAND 8 VENTI 10 şeklinde yazdırdı.
  
 }

}

#enum, #java, #java-dersleri