Was ist das Gegenteil von true? Selbstverständlich false.
Was ist das Gegenteil von false? Selstverständlich true.
So weit ist alles klar, doch was ist das Gegenteil von null?
Ist die Antwort not null? Vielleicht etwas konkretes ? – aber was?
Ok, stellen wir die Frage nach der Sinnhaftigkeit. Mein Lehrling hat gestern einen Code von der Struktur ähnlich wie diesen erzeugt:
public bool? DoSmth() {
if (....)
return true;
if (....)
return false;
if (....)
return null;
}
//Funktionsaufruf
bool? CallDoSmth() {
//......
return !DoSmth();
}
Da zwängte sich mir die Frage auf, was passiert eigentlich, wenn DoSmth den Wert null liefert. Was ist das Ergebnis von !null?
Folgenden Code beispielsweise verweigert bereits der Compiler:
Console.WriteLine(!null);
Doch nicht den oben dargestellten. Es kommt nicht einmal zu einem Laufzeitfehler!
Den das Ergebnis ist: !null == null
Beispielsweise lässt sich sogar dieser Code ausführen:
Console.WriteLine(!DoSmth());
Tja, wer hätte das gedacht :)