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

to Top