C# Language
String-Verkettung
Suche…
Bemerkungen
Wenn Sie eine dynamische Zeichenfolge erstellen, empfiehlt es sich, die StringBuilder
Klasse zu Concat
, anstatt die Zeichenfolgen mithilfe der + oder Concat
Methode zu verbinden, da jedes + / Concat
bei jeder Concat
ein neues Zeichenfolgenobjekt erstellt.
+ Operator
string s1 = "string1";
string s2 = "string2";
string s3 = s1 + s2; // "string1string2"
Verketten Sie Zeichenfolgen mit System.Text.StringBuilder
Das Verketten von Zeichenfolgen mit einem StringBuilder kann Leistungsvorteile gegenüber der einfachen Verkettung von Zeichenfolgen mit +
bieten. Dies liegt an der Speicherzuordnung. Zeichenfolgen werden bei jeder Verkettung neu zugewiesen, StringBuilders reservieren Speicher nur in Blöcken, wenn der aktuelle Block erschöpft ist. Dies kann einen großen Unterschied machen, wenn viele kleine Verkettungen durchgeführt werden.
StringBuilder sb = new StringBuilder();
for (int i = 1; i <= 5; i++)
{
sb.Append(i);
sb.Append(" ");
}
Console.WriteLine(sb.ToString()); // "1 2 3 4 5 "
Aufrufe von Append()
können verkettet werden, da ein Verweis auf den StringBuilder
:
StringBuilder sb = new StringBuilder();
sb.Append("some string ")
.Append("another string");
Concat-String-Array-Elemente mit String.Join
Mit der String.Join
Methode können mehrere Elemente aus einem String-Array verkettet werden.
string[] value = {"apple", "orange", "grape", "pear"};
string separator = ", ";
string result = String.Join(separator, value, 1, 2);
Console.WriteLine(result);
Erzeugt die folgende Ausgabe: "Orange, Traube"
In diesem Beispiel wird die String.Join(String, String[], Int32, Int32)
, die den String.Join(String, String[], Int32, Int32)
und die Anzahl über dem Trennzeichen und Wert angibt.
Wenn Sie den startIndex und die Anzahl der Überladungen nicht verwenden möchten, können Sie alle angegebenen Zeichenfolgen verknüpfen. So was:
string[] value = {"apple", "orange", "grape", "pear"};
string separator = ", ";
string result = String.Join(separator, value);
Console.WriteLine(result);
die produzieren wird;
Apfel, Orange, Traube, Birne
Verkettung zweier Zeichenketten mit $
$ bietet eine einfache und prägnante Methode zum Verketten mehrerer Zeichenfolgen.
var str1 = "text1";
var str2 = " ";
var str3 = "text3";
string result2 = $"{str1}{str2}{str3}"; //"text1 text3"