Es hängt davon ab, was Sie mit "Array" meinen.
Wenn Sie das allgemeine Computing-Konzept einer zufälligen Zugriff, feste Länge, Integer-indexierbare Sammlung von Objekten, dann ja, kann eine Zeichenfolge genau so angesehen werden. (Das allgemeine Berechnungskonzept beinhaltet oft, dass es zusammenhängend im Speicher ist, aber abgesehen von einigen Fällen, wie z. B. die Verwendung von Zeigern in unsicherem Code, ist dies hinsichtlich C# nicht sehr bedeutungsvoll).
Wenn Sie die Sprache definiert C# Umsetzung dieses Konzepts, char[]
dann nicht wirklich, die beiden sind verschiedene Dinge. In der Praxis wird System.String
tatsächlich als ein Array von char
s implementiert, aber es muss nicht gewesen sein.
Sprache nit-Picks beiseite, die praktische Bit:
Wenn Sie die gleichen Operationen an einer Schnur tun möchten, wie Sie es auf einem char[]
dann wird dies oft arbeiten (vor allem aber, String schreibgeschützt) und sehr oft der effizienteste Weg, so lange konzeptionell ganz einfach. Insbesondere unter Verwendung von foreach
und unter Verwendung eines Index, der sich zwischen 0
und str.Length - 1
bewegt, funktionieren gut. In ähnlicher Weise können viele Vorgänge, die man unter char[]
tun kann, unter string
, wie CopyTo()
und Gießen nach IEnumerable<char>
durchgeführt werden.
Wenn Sie tatsächlich eine Reihe von Zeichen haben möchten, müssen Sie ToCharArray()
anrufen.
+1 für eine klare, dokumentierte Antwort. – NotMe