728x90
안녕하세요!
이번에는 C#에서 문자열(String)을 다루고 활용하는 방법에 대해 자세히 알아보겠습니다.
문자열은 프로그래밍에서 텍스트 데이터를 저장, 조작 및 표현하는 데 사용되는 중요한 데이터 유형입니다.
함께 예제를 통해 문자열을 자세히 알아보도록 하겠습니다.
문자열의 생성
string name = "John Doe";
string message = "Hello, World!";
- 문자열은 C#에서 string 데이터 유형으로 표현됩니다.
- 문자열은 작은따옴표('')나 큰따옴표("")로 둘러싸인 일련의 문자들의 집합입니다.
- 문자열은 리터럴을 사용하여 생성하거나 new 키워드를 사용하여 인스턴스를 생성할 수 있습니다.
string name = new string(new char[] { 'J', 'o', 'h', 'n' });
- 또한, new 키워드를 사용하여 문자 배열로부터 문자열을 생성할 수도 있습니다.
문자열 조합
string firstName = "John";
string lastName = "Doe";
string fullName = firstName + " " + lastName; // "John Doe"
- 문자열은 + 연산자를 사용하여 다른 문자열과 결합할 수 있습니다.
- 이것을 문자열 연결 또는 문자열 조합이라고 합니다.
string name = "John";
int age = 30;
string message = $"My name is {name} and I am {age} years old."; // "My name is John and I am 30 years old."
- C# 6 이상에서는 보간 문자열(interpolated string)을 사용하여 더 간단하게 문자열을 형식화할 수 있습니다.
- 보간 문자열을 사용하여 변수 값을 문자열에 삽입할 수도 있습니다.
문자열 형식화
string name = "John";
int age = 30;
string message = string.Format("My name is {0} and I am {1} years old.", name, age); // "My name is John and I am 30 years old."
- 문자열 형식화는 문자열 내에 다른 값들을 포맷팅하여 삽입하는 것을 말합니다.
- string.Format() 메서드를 사용하거나 보간 문자열을 사용할 수 있습니다.
- 문자열에 동적인 값을 삽입할 수 있습니다.
문자열 메서드와 속성
string text = "Hello, World!";
int length = text.Length; // 13
string upperCase = text.ToUpper(); // "HELLO, WORLD!"
string lowerCase = text.ToLower(); // "hello, world!"
string substring = text.Substring(7); // "World!"
int index = text.IndexOf(","); // 5
string replacedText = text.Replace("Hello", "Hi"); // "Hi, World!"
- C#의 string 클래스에는 문자열을 조작하는 다양한 메서드와 속성이 제공됩니다.
- 문자열의 길이를 확인하거나 대소문자 변환, 문자열 추출, 검색 및 치환 등을 수행할 수 있습니다.
문자열 비교
string text1 = "apple";
string text2 = "Apple";
bool isEqual = text1.Equals(text2, StringComparison.OrdinalIgnoreCase); // true
int comparisonResult = string.Compare(text1, text2, StringComparison.OrdinalIgnoreCase); // 0
- C#에서는 문자열을 비교하는 데 사용되는 다양한 메서드가 있습니다.
- 이를 활용하여 문자열을 비교하고 정렬하는 등의 작업을 수행할 수 있습니다.
- 대소문자 구분 여부에 따라 다른 메서드를 선택할 수도 있습니다.
문자열의 불변성
C#의 문자열은 불변(immutable)입니다.
한 번 생성된 문자열은 변경할 수 없으며, 수정할 경우에는 새로운 문자열을 생성해야 합니다.
이러한 불변성은 문자열의 안정성과 스레드 안전성을 보장하는 데 도움을 줍니다.
string text1 = "immutable";
text1 = "change";
- 문자열 값을 할당 한 후 다른 문자열을 할당할 수 있는데 왜 불변성이냐, 라는 의문을 가질 수 있습니다.
- 위의 경우, text1에 "immutable"값을 가진 string 객체가 할당되고 난 후 "change"값을 가진 string객체로 변환 되며 기존의 "immutable"값을 가진 string 객체는 사라집니다.
- 위 예제로 불변성의 뜻을 이해하시면 되겠습니다.
이번 글에서는 C#에서 문자열을 다루고 활용하는 방법에 대해 자세히 알아보았습니다.
문자열은 텍스트 데이터를 표현하고 처리하는 데 중요한 역할을 합니다.
C#의 다양한 문자열 기능을 적절히 활용하여 프로그래밍 작업을 보다 효과적으로 수행할 수 있습니다.
감사합니다!
728x90
'[C#] > 프로그래밍 기초' 카테고리의 다른 글
[C#] 프로그래밍 기초 : 프로퍼티 (15) | 2023.07.31 |
---|---|
[C#] 프로그래밍 기초 : 병렬제어 (18) | 2023.07.20 |
[C#] 프로그래밍 기초 : 유용한 라이브러리 (15) | 2023.06.28 |
[C#] 프로그래밍 기초 : 디자인 패턴 (20) | 2023.06.28 |
[C#] 프로그래밍 기초 : 파일 입출력 (16) | 2023.06.27 |