Beispiel ( den Fall beachten ):
string s = "Hello world!";
String s = "Hello world!";
Wie lauten die Leitlinien für die Verwendung der einzelnen Mittel? Und was sind die Unterschiede?
Beispiel ( den Fall beachten ):
string s = "Hello world!";
String s = "Hello world!";
Wie lauten die Leitlinien für die Verwendung der einzelnen Mittel? Und was sind die Unterschiede?
Dieses YouTube Video demonstriert praktisch, wie sie sich unterscheiden.
Doch nun zu einer langen Antwort in Textform.
Wenn wir über .NET
Es gibt zwei verschiedene Dinge: Erstens gibt es .NET
Rahmen und zum anderen sind es Sprachen ( C#
, VB.NET
usw.), die diesen Rahmen nutzen.
" System.String
" alias "String" (großes "S") ist ein .NET
Framework-Datentyp, während "string" ein C#
Datentyp.
Kurz gesagt ist "String" ein Alias (dieselbe Sache mit verschiedenen Namen) von "string". Technisch gesehen werden also beide nachstehenden Code-Anweisungen die gleiche Ausgabe liefern.
String s = "I am String";
oder
string s = "I am String";
In gleicher Weise gibt es Aliase für andere C#-Datentypen, wie unten dargestellt:
Objekt: System.Object
, Zeichenfolge: System.String
, bool: System.Boolean
, byte: System.Byte
, sbyte: System.SByte
, kurz: System.Int16
und so weiter.
Nun die Millionen-Dollar-Frage aus der Sicht des Programmierers: Wann sollte man "String" und "string" verwenden?
Um Verwirrung zu vermeiden, sollte man zunächst eine von ihnen konsequent nutzen. Aber aus der Perspektive der besten Praktiken ist es gut, bei der Variablendeklaration "String" (kleines "s") zu verwenden, und wenn Sie es als Klassennamen verwenden, ist "String" (großes "S") vorzuziehen.
Im folgenden Code ist die linke Seite eine Variablendeklaration, die mit "String" deklariert wird. Auf der rechten Seite rufen wir eine Methode auf, daher ist "String" sinnvoller.
string s = String.ToUpper() ;
C# ist eine Sprache, die zusammen mit der CLR verwendet wird.
string
ist ein Typ in C#.
System.String
ist ein Typ in der CLR.
Wenn Sie C# zusammen mit der CLR verwenden string
wird abgebildet auf System.String
.
Theoretisch könnte man einen C#-Compiler implementieren, der Java-Bytecode erzeugt. Eine sinnvolle Implementierung dieses Compilers würde wahrscheinlich string
à java.lang.String
um mit der Java-Laufzeitbibliothek zu interagieren.
Kleinschreibung string
ist ein Alias für System.String
. Sie sind identisch in C#
.
Es gibt eine Debatte darüber, ob Sie die Systemtypen ( System.Int32
, System.String
usw.) oder die Typen C# aliases
( int
, string
, etc). Ich persönlich glaube, dass Sie die C# aliases
aber das ist nur meine persönliche Vorliebe.
Beide sind gleich. Aber aus Sicht der Kodierungsrichtlinien ist es besser, die string
代わりに String
. Dies wird in der Regel von Entwicklern verwendet. z.B. statt Int32
wir verwenden int
als int
ist ein Alias für Int32
FYI "Das Schlüsselwort string ist einfach ein Alias für die vordefinierte Klasse System.String
." - C#-Sprachenspezifikation 4.2.3 http://msdn2.microsoft.com/En-US/library/aa691153.aspx
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.