Mögliche Duplizieren:
In C# what is the difference between String and stringString oder String
, was der Unterschied zwischen dem String und String ist. In C#, welches ist bevorzugt?
Mögliche Duplizieren:
In C# what is the difference between String and stringString oder String
, was der Unterschied zwischen dem String und String ist. In C#, welches ist bevorzugt?
string
ist nur ein Alias für String
- sie sind die gleichen
edit: Typ
FestIch denke du hast das tatsächlich rückwärts. –
Ich denke, es ist anders herum. Wie 'int' ist ein Alias für' Int32' – Phil
string
ist eine C# -spezifische Schlüsselwort, das das gleiche wie das System.String
Art bedeutet. Bevorzugen Sie die Sprachschlüsselwörter, wenn möglich, verwenden Sie z. string
, int
, float
, anstelle von System.String
, System.Int32
, System.Single
.
warum der Vorzugsteil? – andy
Abgesehen von der Tatsache, dass es ein * viel * sauberer aussieht, ist dies die Richtlinie in den meisten Open-Source-Projekten und ist der Stil MS in ihrer Dokumentation verwendet. – cdhowie
float == Einzel? Ich wusste nicht, dass ... ich denke, es ist ein halbes Double, also macht das Sinn ... immer noch ein lustiger Name. – mpen
Sie sind das gleiche, String ist ein Alias für String.
Ich neige dazu, String zu verwenden, wenn statische Methoden aufrufen (dh String.Format (...) oder String.IsNullOrEmpty (...). Ich weiß nicht, warum, weiß ich einfach.
Ich mache dasselbe, wahrscheinlich, weil es sich falsch anfühlt, eine statische Methode für etwas aufzurufen, das nicht wie eine Klasse aussieht. – Phil
Haha, ja, vielleicht ist es das. Ich bevorzuge blaugrün zu blau. –
Es macht Sinn ... wenn Sie es wie eine Klasse verwenden, möchten Sie, dass es wie eine Klasse aussieht. – mpen
Eigentlich string
ist ein Alias für System.String
aber erash ist im Grunde richtig ...
Hier ist eine Liste von anderen alias' ist schamlos von Jon Skeet hob in this post:
* object: System.Object
* string: System.String
* bool: System.Boolean
* byte: System.Byte
* sbyte: System.SByte
* short: System.Int16
* ushort: System.UInt16
* int: System.Int32
* uint: System.UInt32
* long: System.Int64
* ulong: System.UInt64
* float: System.Single
* double: System.Double
* decimal: System.Decimal
* char: System.Char
@Ani: Nicht "möglicherweise", sondern " definitiv. " – jason
@Jason: Das ist das Boilerplate Text, der auftaucht, wenn ich "als genaues Duplikat schließen" auswähle. Kann ich das ändern? – Ani
@Ani: Ich war mir nicht bewusst, dass es eine solche Funktion gibt. Ist das neu? – jason