공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!! 포스팅 내용이 찾아주신 분들께 도움이 되길 바라며 더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^
|
2019/04/22 - [C#] - C#문법-3 : 배열 Array
이번 포스팅에서는 문자열과 열거형에 대해 공부합니다.
문자열 :
C#에서 문자열은 한 번 문자열이 지정되면 변경할 수 없습니다.
때문에 string str1 = "A"; 라고 값을 지정한 후
str1 = "B"; 로 값을 변경한다면 사람이 코드를 봤을 때는
값이 변경된 것으로 보이지만, 내부적으로는 전혀 다른 메모리를
갖는 객체를 가리킵니다.
문자열은 "" 이중부호로 표현하고
단일문자 char는 '' 단일부호로 표현합니다.
문자열 = 문자 배열
문자열은 char의 집합체입니다.
문자열의 각 index 문자들을 가져올 수 있습니다.
using System;
StringBuilder 라는 클래스가 있습니다.
이 클래스는 문자열을 다루는데 중요한 클래스 중 하나로
문자열과는 다르게 Mutable 타입이기 때문에 문자열 갱신이
많이 발생하는 곳에서 자주 사용됩니다.
이 클래스는 메모리를 생성 또는 소멸을 별도로 하지 않고
일정한 버퍼를 가지고 문자열 갱신을 효율적으로 처리합니다.
열거형 Enum
열거형은 상수를 의미있는 단어들로 표현합니다.
그리고 숫자형 타입으로 캐스팅이 가능합니다.
즉 int 형 변수에 값을 대입할 수 있습니다.
예를 들어 일 ~ 토를 숫자르 0 ~ 6으로 표현하는 것 보다는
SUN ~ SAT 로 표현하는게 사람이 파악하기에 쉽겠죠?
또한 enum은 각 멤버들을 비트별로 구분되는 값으로 가질 수
있습니다.( e.g. 0, 1, 2, 4, 8, 16, ... )
이렇게 비트 필드를 갖는 다는 것을 표시하기 위해서
자바에서 함수적 인터페이스에 @FunctionalInteface 어노테이션을
사용하는 것처럼 [Flags] 라는 Attr을 지정할 수 있습니다.
Way way = Way.LEFT; 를 아래처럼 사용할 수도 있습니다.
그럼 2가지 값을 동시에 체크할 수 있겠죠?
이상입니다. 감사합니다.
다음 포스팅에서는 연산자에 대해서 공부합니다.
'C#' 카테고리의 다른 글
C#문법-6 : 조건문(if ~ else if ~ else, switch) 과 반복문(for, foreach, while, do while) (0) | 2019.04.23 |
---|---|
C#문법-5 : 연산자(산술, 증감, 논리, 비교, 비트, 시프트, 조건) (0) | 2019.04.22 |
C#문법-3 : 배열 Array (0) | 2019.04.22 |
C#문법-2 : 변수, 상수 (0) | 2019.04.22 |
C#문법-1 : 데이터 타입 (0) | 2019.04.22 |