string(C# 참조)
string 형식은 0개 이상의 유니코드 문자 시퀀스를 나타냅니다. string은 .NET Framework의 String에 대한 별칭입니다.
string은 참조 형식이지만 같음 연산자(== 및 !=)는 참조가 아니라 string 개체의 값을 비교하도록 정의되어 있으므로 좀 더 쉽게 문자열을 비교할 수 있습니다. 예를 들면 다음과 같습니다.
string a = "hello";
string b = "h";
// Append to contents of 'b'
b += "ello";
Console.WriteLine(a == b);
Console.WriteLine((object)a == (object)b);
이 코드는 문자열의 내용이 동일하므로 "True"를 표시한 다음 "False"를 표시하지만 a와 b는 동일한 문자열 인스턴스를 가리키지 않습니다.
+ 연산자는 문자열을 연결합니다.
string a = "good " + "morning";
이 코드는 "good morning"이라는 내용이 포함된 문자열 개체를 만듭니다.
문자열은 변경할 수 없습니다. 즉, 구문을 보면 문자열 개체를 만든 후 이 개체의 내용을 변경할 수 있는 것처럼 보이지만 이는 가능하지 않습니다. 예를 들어, 다음 코드를 작성하면 컴파일러에서는 새 문자 시퀀스가 있는 새 문자열 개체를 만들며 새 개체에 b가 할당됩니다. 문자열 "h"는 가비지 수집의 대상입니다.
string b = "h";
b += "ello";
[] 연산자는 string의 개별 문자에 읽기 전용으로 액세스하는 데 사용할 수 있습니다.
string str = "test";
char x = str[2]; // x = 's';
문자열 리터럴은 string 형식이며 따옴표 붙은 형식과 @-따옴표 붙은 형식의 두 가지 형태로 작성할 수 있습니다. 따옴표 붙은 문자열 리터럴은 다음과 같이 큰따옴표(")로 묶습니다.
"good morning" // a string literal
문자열 리터럴에는 다음과 같이 이스케이프 시퀀스를 포함한 모든 문자 리터럴이 포함될 수 있습니다. 다음 예제에서는 백슬래시에 이스케이프 시퀀스 \\, 글자 f에 \u0066, 줄 바꿈 문자에 \n을 사용합니다.
string a = "\\\u0066\n";
Console.WriteLine(a);
참고
이스케이프 코드 \udddd는 유니코드 문자 U+dddd를 나타냅니다. 여기서 dddd는 네 자리 숫자입니다. \Udddddddd와 같은 8자리 유니코드 이스케이프 코드도 사용할 수 있습니다.
약어 문자열 리터럴은 @로 시작하며 큰따옴표로 묶습니다. 예를 들면 다음과 같습니다.
@"good morning" // a string literal
약어 문자열의 이점은 이스케이프 시퀀스를 처리하지 않기 때문에 다음과 같이 정규화된 파일 이름 등을 쉽게 작성할 수 있다는 것입니다.
@"c:\Docs\Source\a.txt" // rather than "c:\\Docs\\Source\\a.txt"
@-따옴표 붙은 문자열에 큰따옴표를 포함시키려면 다음과 같이 큰따옴표를 두 번 입력합니다.
@"""Ahoy!"" cried the captain." // "Ahoy!" cried the captain.
또한 @ 기호는 C# 키워드인 참조된 식별자(/reference)를 사용하는 데 유용합니다.
C#의 문자열에 대한 자세한 내용은 문자열(C# 프로그래밍 가이드)을 참조하십시오.
예제
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
*/
C# 언어 사양
자세한 내용은 C# 언어 사양을 참조하십시오. 이 언어 사양은 C# 구문 및 사용법에 대한 신뢰할 수 있는 소스입니다.
참고 항목
참조
개념
.NET Framework에서 문자열 사용에 대한 유용한 정보