Heim > Backend-Entwicklung > C++ > Warum gibt „Boolean.ToString()' „True' und „False' anstelle von „true' und „false' zurück?

Warum gibt „Boolean.ToString()' „True' und „False' anstelle von „true' und „false' zurück?

Linda Hamilton
Freigeben: 2025-01-04 02:38:43
Original
858 Leute haben es durchsucht

Why Does `Boolean.ToString()` Return

Warum Boolean.ToString() „True“ und nicht „true“ zurückgibt

Die Methode Boolean.ToString() in .NET gibt zurück entweder „True“ oder „False“, basierend auf dem Wert des booleschen Objekts. Der Grund für diese Großschreibung ist unklar und ist seit vielen Jahren Gegenstand von Spekulationen.

MSDN-Erklärung

Laut MSDN gibt Boolean.ToString() Konstanten zurück „ „True“ oder „False“ anstelle der Felder „TrueString“ oder „FalseString“. Dies liegt daran, dass bei XML die Groß-/Kleinschreibung beachtet wird und die XML-Spezifikation „true“ und „false“ als gültige boolesche Werte erkennt. MSDN empfiehlt, die zurückgegebene Zeichenfolge mit der Methode String.ToLower() in Kleinbuchstaben umzuwandeln, bevor sie in eine XML-Datei geschrieben wird.

Hacky Solutions

Aufgrund dieser Großschreibung gibt es Möglicherweise handelt es sich um Szenarien, in denen der zurückgegebene Wert nicht mit Kontexten kompatibel ist, bei denen Kleinschreibung beachtet wird. Eine knifflige Lösung für dieses Problem besteht darin, eine Erweiterungsmethode zu erstellen, die den booleschen Wert für bestimmte Anwendungsfälle, wie etwa XML, in Kleinbuchstaben umwandelt. Zum Beispiel:

internal static string ToXmlString(this bool b)
{
    return b.ToString().ToLower();
}
Nach dem Login kopieren

Diese Methode fügt dem Stapel eine neue Funktion hinzu, macht aber die manuelle Konvertierung der Zeichenfolge an mehreren Stellen in Kleinbuchstaben überflüssig.

Alternative Methode

Die Methode Boolean.ToString(IFormatProvider) existiert ebenfalls, aber im Abschnitt „Bemerkungen“ heißt es, dass der Parameter „IFormatProvider“ nicht an der Methode beteiligt ist Ausführung der Methode und spiegelt nicht kulturspezifische Einstellungen wider. Daher bietet diese alternative Methode keine Anpassungsmöglichkeiten.

Das obige ist der detaillierte Inhalt vonWarum gibt „Boolean.ToString()' „True' und „False' anstelle von „true' und „false' zurück?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage