Ich habe eine Aufzählung MyEnum (Neg -1; None 0; Pos 1)
.
Ich verwende das Ergebnis von CompareTo()
um ein Objekt dieser Aufzählung zu initialisieren.
Was ist die am leistungsfähigsten wie man das in .NET machen kann (Negativ zu -1, 0 zu 0, positiv zu 1)?
NB.
CompareTo()
gibt einen Integer-Wert zurück..
2 Stimmen
@knittl : denken Sie, dass die Abteilung am leistungsfähigsten ist?
9 Stimmen
@knittl macht .NET-Map
0/0
a0
?0 Stimmen
Wenn dem Enum bereits die Werte -1/0/1 zugewiesen sind, wird CompareTo() immer -1, 0 oder 1 zurückgeben (niemals einen anderen Wert). Wenn ich also richtig verstehe, können Sie einfach Folgendes tun, um einen Wert vom Typ MyEnum zu erhalten:
MyEnum myval = (MyEnum)x.CompareTo(y);
2 Stimmen
@manixrock: Bei "immer" bin ich mir nicht sicher. MSDN sagt über: "weniger als 0": msdn.microsoft.com/de-us/library/
3 Stimmen
Wenn Sie die "leistungsfähigste" Methode wünschen, müssen Sie die verschiedenen Optionen testen. Schauen Sie sich die Klasse System.Diagnostics.Stopwatch an, um die einzelnen Optionen zu messen.