객체 지향 (Object Oriented)

 

 

 

 

 

Ø절차형 프로그래밍과 객체지향 프로그래밍
lC같은 예전 프로그램은 기능을 나열하는 방법의 프로그램을 지원한다. 함수와 서브루틴, 변수들로 이루어져 있다.
l반면, 현실 세계는 객체들로 이루어져 있고, 각 객체들의 동작과 속성, 상호작용으로 이루어져 있다.
l현실 세계와 닮은 프로그래밍이 바로 객체지향이다.

 

 

Ø객체
l데이터와 프로시져 들의 집합. 상태를 가지고 독자성을 가지며 각 객체마다 고유한 행동이 있다.
l프로그램에서는 상태를 변수로 행동은 메소드로 정의한다.

 

 

 

 

 

문자열 비교

 

 

 

 

Ø ==, != 연산자
l 문자열간의 비교를 위한 연산자

 

Ø str1.Equals(str2) 메소드
l (str1 == str2) 와 같은 값을 반환

 

Ø str1.CompareTo(str2) 또는

       string.Compare(str1, str2)

l str1 srt2 보다 크면(문자에도 순서가 있다) 1 작으면 -1 같으면 0을 반환

 

Ø 프로그램의 readbility   위해서 되도록 연산자를 쓰자.

 

 

 

 

 

 

문자열 메소드 (4) – 구분

 

 

 

 

 

ØSplit(구분문자)
l문자열을 구분자를 기준으로 잘라서 여러 개의 문자열로 만든 다음, 이 문자열 들의 배열을 반환한다.

) 빈칸으로 나누어진 문자열

string str1 = "123 456 7 89";

string [] str2 = str1.Split(' ');

foreach (string str3 in str2) Console.WriteLine(str3);

//결과???

 

 

 

 

 

문자열 메소드 (3) – 검색, 포멧

 

 

 

 

ØIndexOf(str), LastIndexOf(str)
l문자열이 처음으로 (마지막으로) 나타나는 곳의 위치를 리턴

 

ØSubstring(index), Substring(index, length)
lindex 위치부터 length 길이 만큼 잘라냄. Length없으면 끝까지의 문자열을 잘라냄

 

ØString.Format(formatString, args)
lConsole.Write 메소드의 화면 출력 값과 동일한 string으로 반환한다.
l) a=String.Format(“{0}:{1}”, “boo”, 1234);

     à a=“boo:1234”

 

 

 

 

 

문자열 메소드 (2) - 변환, 교체

 

 

 

 

 

ØToUpper(), ToLower()

  : 대문자/소문자로 통일

 

ØTrim(), TrimStart(), TrimEnd()

  : 공백 앞뒤 자르기, 앞부분 공백 자르기, 뒷부분 공백 자르기

 

ØReplace(바꿀문자열, 바뀔문자열)

  : 문자열 내에서 바꿀문자열을 찾아 바뀔문자열로 바꾼다. 아래는 공백제거의 예이다.

  ) "12 3    4".Replace(" ", "") à "1234"

 

 

 

 

문자열 메소드 (1) – 추가

 

 

 

 

ØLength 프로퍼티 : 문자열  길이
ØInsert (index, str) : 문자열 index 위치에 str을 추가한다. "1234".Insert(2,"AA") à "12AA34"
ØConcat(str1, str2, …) 파라미터 문자열을 모두 합친다. 새로운 문자열을 반환하다.
Østr1+str2 : str1str2를 합친다.

(*) 대부분의 문자열 메소드는 결과 문자열을 다른 변수에 할당해 주지 않으면 아무 효과도 일어나지 않는다.

  , str3=str1.Insert(2, str2); 식으로

 

 

 

 

문자열에 인덱서 사용(Indexer)

 

 

 

 

Ø문자열[index]
l문자열의 각 문자를 배열의 element처럼 사용할 수 있다. 실제 배열은 아니지만 indexer라는 것을 정의하여 내부에 구현해 두었기 때문이다.
lstr[0] 이라고 하면 str문자열의 첫번째 문자를 뜻한다. 이때 str[0]을 읽을 수는 있지만, str[0]=‘A’ 이런 식으로 문자열을 바꾸는 것은 안된다.
l배열과 같이 IndexOutOfRangeException 예외가 발생할 수 있다.

char char0 = str[0];

 

 

 

 

 

문자열 선언하기

 

 

 

 

ØC#의 문자열
lstring ( = System.String) 객체를 사용한다.
l문자열 내부 문자는 유니코드를 사용한다.
l참조형 변수이다. (C에서는 문자열이 문자형의 배열)

 

 

 

Ø문자열 선언하기
lstring str = “ABC”
lnew 를 사용하지 않고도 인스턴스 생성이 가능하다.

 

 

 

 

 

+ Recent posts