NULL Bool konvertieren? blasen
Wie konvertieren Sie eine null - bool?
zu bool
in C#?
Habe ich versucht x.Value
oder x.HasValue
...
InformationsquelleAutor der Frage KentZhou | 2011-05-20
Du musst angemeldet sein, um einen Kommentar abzugeben.
Du letztlich entscheiden, was die null bool vertreten wird. Wenn
null
solltefalse
Sie dies tun können:Oder:
Oder:
InformationsquelleAutor der Antwort Ken Pespisa
Können Sie die null-coalescing-operator:
x ?? something
wosomething
ist ein boolescher Wert, den Sie verwenden möchten, wennx
istnull
.Beispiel:
newBool
wird falsch sein.InformationsquelleAutor der Antwort SLaks
Können Sie
Nullable{T}
GetValueOrDefault()
Methode. Dies wird false zurückgegeben, wenn der Wert null ist.InformationsquelleAutor der Antwort Joel Briggs
Der einfachste Weg ist die Verwendung des null-coalescing operator:
??
Den
??
mit nullable-Werten funktioniert mit der Prüfung der bereitgestellten nullable Ausdruck. Wenn die nullable-Ausdruck einen Wert hat, der es Wert ist, wird verwendet werden, sonst wird es mit dem Ausdruck auf der rechten Seite??
InformationsquelleAutor der Antwort JaredPar
Wenn du gehst zu verwenden, die
bool?
in einemif
Aussage, ich finde die einfachste Sache zu tun ist, um zu vergleichen, entweder gegentrue
oderfalse
.Natürlich, Sie können auch vergleichen gegen null.
Wenn du gehst, konvertieren Sie es in einen bool-zur Weitergabe an andere Teile der Anwendung, dann ist der Null Coalesce operator ist, was Sie wollen.
Wenn Sie bereits überprüft für null, und Sie wollen einfach nur den Wert, dann den Zugriff auf die Value-Eigenschaft.
InformationsquelleAutor der Antwort David Yaw
Den gesamten Weg wäre:
Oder Sie können testen, die für bestimmte Werte mit
InformationsquelleAutor der Antwort CodeNaked
InformationsquelleAutor der Antwort patrick
Etwas wie:
InformationsquelleAutor der Antwort manojlds
Diese Antwort ist für den Fall verwenden, wenn Sie wollen einfach nur, um zu testen, die
bool?
im Zustand. Es kann auch verwendet werden, um einen normalenbool
. Es ist eine alternative, die ich personnaly einfacher finden zu Lesen als diecoalescing operator ??
.Wenn Sie testen möchten, eine Bedingung, die Sie verwenden können, diese
Oben wenn wird nur wahr, wenn die
bool?
wahr ist.Können Sie diese auch verwenden, weisen Sie eine regelmäßige
bool
aus einerbool?
Hexe ist die gleiche wie
InformationsquelleAutor der Antwort Rémi
Dies ist eine interessante variation auf das Thema. In der ersten und zweiten Blicke, die Sie annehmen würde, der true-Zweig genommen wird. Nicht so!
Den Weg zu bekommen, was Sie wollen, ist, dies zu tun:
InformationsquelleAutor der Antwort stevieg