SORU
24 AĞUSTOS 2009, PAZARTESİ


Ne tür-güvenli numaralama çeşitleri model için?

Scala denkliği yok enumJava var gibi. İlgili sabitler verildi, Scala ve en iyi yolu bu sabitleri temsil etmek için ne olurdu?

CEVAP
24 AĞUSTOS 2009, PAZARTESİ


Örnek söylemeliyimScala belgeleri dışında kopyalanmıştarafındanskaffmanyukarıdaki uygulamada sınırlı yarar. (case objects kullanabilirsiniz).

Almak için bir şey en yakından benzeyen bir Java Enum (yani mantıklı toString valueOf yöntemleri -- belki sen ısrar numaralandırma değerleri için bir veritabanı) için Değiştir biraz. Eğer kullanmış olsaydınızskaffman's kod:

WeekDay.valueOf("Sun") //returns None
WeekDay.Tue.toString   //returns Weekday(2)

Aşağıdaki bildirimi kullanarak: oysa

object WeekDay extends Enumeration {
  type WeekDay = Value
  val Mon = Value("Mon")
  val Tue = Value("Tue") 
  ... etc
}

Daha mantıklı sonuçlar alırsınız:

WeekDay.valueOf("Sun") //returns Some(Sun)
WeekDay.Tue.toString   //returns Tue

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • AFISHAL

    AFISHAL

    7 Mart 2009
  • Arun Kumar

    Arun Kumar

    18 Mart 2010
  • CorridorDigital

    CorridorDigi

    17 Mayıs 2010