5
Ich habe Scala-Stil EnumArbeiten mit Aufzählungen in Scala
object SomeObject {
final object SomeEnum extends Enumeration {
type SomeEnum = Value
val val1, val2, val3 = Value
}
Wie kann ich:
1) Ruf valueOf
Methode den Wert durch seine String-Darstellung erhalten zu können?
val possibleVal3 = SomeObject.SomeEnum.valueOf("val3")
2) Aufruf von Java-Analogon von Ordnungs:
val a = SomeObject.SomeEnum.val2
a.ordinal
Es gibt keine solche Methoden in SomeEnum
, offensichtlich.
Was an dieser Linie tatsächlich passiert: val Mo, Di, Mi, Do, Fr, Sa, So = Wert? Ich kann sehen, dass "Enumeration.Value" eine abstrakte Klasse ist, also wie funktioniert es? – Felix
"Wert" in dieser Zeile ist kein Typname, es ist eine 'geschützte' Methode, die neue Werte erzeugt. – axtavt
Die Up-Stimmen zu diesen Fragen und Antworten müssen etwas über API-Design und Enumeration sagen. –