string (odwołanie w C#)
string Typu reprezentuje sekwencję zero lub więcej znaków Unicode.stringjest aliasem dla String w.NET Framework.
Chociaż string jest typem odwołania, operatory równości (== i !=) są zdefiniowane w celu porównania wartości string obiektów, nie odwołuje.To sprawia, że badania na ciąg znaków równości bardziej intuicyjne.Na przykład:
string a = "hello";
string b = "h";
// Append to contents of 'b'
b += "ello";
Console.WriteLine(a == b);
Console.WriteLine((object)a == (object)b);
Wyświetla "wartość True" i następnie "False", ponieważ zawartość ciągi są równoważne, ale a i b nie odnosi się do tego samego wystąpienia ciągu.
+ Operator łączy ciągi:
string a = "good " + "morning";
Tworzy obiekt ciąg, który zawiera "Dzień dobry".
Ciągi znaków są niezmienne--zawartość obiektu ciągu nie można zmienić po utworzeniu obiektu, chociaż sprawia, że składnia okaże się tak, jakby można to zrobić.Na przykład pisząc ten kod, kompilator faktycznie tworzy nowy obiekt string do przechowywania nową sekwencję znaków, a ten obiekt jest przypisany do b.Ciąg "h" jest następnie czyszczeniu.
string b = "h";
b += "ello";
Dostęp tylko do odczytu do pojedynczych znaków można używać operatora [] string:
string str = "test";
char x = str[2]; // x = 's';
Literały ciągów znaków są typu string i może zapisać w dwóch formach notowane i @ podane.Jako ciąg, który literały są ujęte w podwójny cudzysłów ("):
"good morning" // a string literal
Literały ciągów znaków może zawierać dowolny znak literału.Sekwencje unikowe są uwzględniane.W poniższym przykładzie użyto sekwencji unikowej \\ dla kreska ułamkowa odwrócona, \u0066 litery f, i \n dla nowego wiersza.
string a = "\\\u0066\n";
Console.WriteLine(a);
[!UWAGA]
Kod wyjścia \udddd (gdzie dddd jest czterocyfrowy numer) reprezentuje znak Unicode U +dddd.Kody ucieczki ośmiocyfrowego kodu Unicode są również uznawane: \Udddddddd.
Literały ciągów znaków Verbatim zaczynać, a także są ujęte w podwójny cudzysłów.Na przykład:
@"good morning" // a string literal
Zaletą verbatim ciągi jest sekwencje unikowe są nie przetwarzane, co sprawia, że łatwo można napisać, na przykład, w pełni kwalifikowanej nazwy pliku:
@"c:\Docs\Source\a.txt" // rather than "c:\\Docs\\Source\\a.txt"
Aby dołączyć ciąg @ cytowany podwójny cudzysłów, należy go dwukrotnie:
@"""Ahoy!"" cried the captain." // "Ahoy!" cried the captain.
Innym zastosowaniem @ symbol obsłudze odwołuje się (/Reference) identyfikatorów, które są słowa kluczowe języka C#.
Aby uzyskać więcej informacji na temat ciągów w języku C#, zobacz Ciągi (Przewodnik programowania w języku C#).
Przykład
class SimpleStringTest
{
static void Main()
{
string a = "\u0068ello ";
string b = "world";
Console.WriteLine( a + b );
Console.WriteLine( a + b == "Hello World" ); // == performs a case-sensitive comparison
}
}
/* Output:
hello world
False
*/
Specyfikacja języka C#
Aby uzyskać więcej informacji, zobacz Specyfikacja języka C#. Specyfikacja języka jest ostatecznym źródłem informacji o składni i użyciu języka C#.
Zobacz też
Informacje
Typy wartości (odwołanie w C#)
Koncepcje
Przewodnik programowania w języku C#
Najlepsze praktyki używania ciągów w programie .NET Framework
Przewodnik programowania w języku C#
Tworzenie nowych ciągów w programie .NET Framework