C# 기초다지기 - 문자열
안녕하세요 열코입니다.
이번 시간에는 C# 프로그래밍의 문자열에 대해 알아보도록 하겠습니다.
C#에서는 다른 언어에서와 마찬가지로 문자열을 문자배열(char[])로 사용할 수 있습니다.
하지만 C#에서 기본 제공하는 string 키워드를 사용하여 문자열 변수를 선언할 수도 있습니다.
string 키워드는 System.String 클래스에 포함되어있습니다.
1. String 객체 만들기
- C#에서 String 클래스의 객체를 만드는 방법은 여러가지가 존재합니다.
1) 문자열 리터럴(상수)를 String 변수에 할당
2) String 클래스 생성자 사용
3) 문자열 연결 연산자(+) 사용
4) 문자열 반환 메소드 호출
- 다음 예제 소스코드를 통해 위 방법에 대해 설명합니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | using System; namespace MyStringApplication { class MyString { static void Main(string[] args) { string str1 = "HELLO"; Console.WriteLine("str1 = {0}", str1); string str2 = new string("HELLO2"); Console.WriteLine("str2 = {0}", str2); char[] letters = {'H', 'E', 'L', 'L', 'O', '3'); string str2_2 = new string(letters); Console.WriteLine("str2_2 = {0}", str2_2); string str3 = str1 + str2; Console.WriteLine("str3 = {0}", str3); string arr = {"HELLO", "SEMOG", "!!"); string str4 = String.Join(" ", arr); Console.WriteLine("str4 = {0}", str4); } } } | cs |
- 출력 결과
str1 = HELLO
str2 = HELLO2
str2_2 = HELLO3
str3 = HELLOHELLO2
str4 = HELLO SEMOG !!
2. String 클래스 속성
- String 클래스에는 다음 두가지의 속성이 존재합니다.
1) Chars : 현재 String 객체의 지정된 위치에 있는 Char 객체를 반환합니다.
2) Length : 현재 String 객체의 문자 수(길이)를 반환합니다.
3. String 클래스 메소드
- String 클래스에는 문자열 객체를 작업하는데 도움이 되는 다양한 메소드(함수)들이 존재합니다.
- 다음 메소드들은 가장 일반적으로 사용되는 메소드들의 리스트입니다.
1) Compare()
1 | public static int Compare(string srt1, string str2); | cs |
- 두 String 객체를 비교하여 정렬 순서에 따라 상대위치를 나타내는 정수를 반환합니다.
- 정렬 순서는 ABC 순이며, 가장 앞 문자부터 비교합니다.
- str1이 str2 보다 정렬순서가 앞인 경우 : 음수(-1) 반환
- str1과 str2가 정렬순서가 동일한 경우 : 0 반환
- str1이 str2 보다 정렬순서가 뒤인 경우 : 양수(+1) 반환
2) Concat()
1 | public static string Concat(string str1, string str2); | cs |
- 두 문자열 객체를 연결하여 반환합니다.
3) Contains()
1 | public bool Contatins(string str); | cs |
- 문자열 내에서 지정된 String 객체가 존재하는지 여부를 나타내는 값을 반환합니다.
4) Copy()
1 | public static string Copy(string str); | cs |
- 지정된 문자열의 복사값으로 새 String 객체를 반환합니다.
5) Equals()
1 | public static bool Equals(string str1, string str2); | cs |
- 지정된 두 String 객체가 동일한지 여부를 반환합니다.
6) IndexOf()
1 | public int IndexOf(char ch); | cs |
- 현재 문자열에서 지정된 문자(유니코드)중 처음으로 나타나는 위치의 인덱스를 반환합니다.
- 매개변수가 문자열(string) 객체인 함수도 오버로딩되어있습니다.
7) Replace()
1 | public string Replace(string str1, string str2); | cs |
- 현재 문자열 객체에 있는 지정된 문자열을 모두 지우고 새로운 문자열로 변경한 문자열 객체를 반환합니다.
8) Split()
1 | public string[] Split(params char[] seperator); | cs |
- 현재 문자 배열 요소로 구분된 문자열 객체의 하위 문자열을 포함하는 문자열 배열을 반환합니다.
- 매개변수 기준으로 문자열을 쪼갠다고 생각하시면 됩니다.
9) Trim()
1 | public string Trim(); | cs |
- 현재 String 객체에서 앞, 뒤 공백문자를 모두 제거합니다.
- 문자열 사이의 공백은 제거되지 않습니다.
이상 'C# 문자열'에 대해 알아보았습니다.
질문 사항은 모두 커뮤니티에서 받습니다. -> 커뮤니티 바로가기
메인 페이지로 이동하시면 더 많은 자료를 볼 수 있습니다.
'C#' 카테고리의 다른 글
C# 기초다지기 - 상속 (0) | 2018.11.09 |
---|---|
C# 기초다지기 - 클래스 (0) | 2018.11.08 |
C# 기초다지기 - 구조체 (0) | 2018.11.08 |
C# 기초다지기 - 배열 (1) | 2018.11.06 |
C# 기초다지기 - 상수 (0) | 2018.11.06 |
C# 기초다지기 - 캡슐화 (0) | 2018.11.05 |
C# 기초다지기 - 프로그램 구조 (0) | 2018.11.05 |
C# 기초다지기 - 변수 (0) | 2018.11.05 |