C# 유형 변환
유형 변환은 기본적으로 유형 캐스팅, 즉 한 유형에서 다른 유형으로 데이터를 변환하는 것입니다. C#에서 유형 캐스팅은 두 가지 형식으로 제공됩니다.
암시적 유형 변환 - 이러한 변환은 C#의 기본값이며 안전한 방식으로 수행됩니다. 예를 들어 작은 정수 형식에서 큰 정수 형식으로 변환하고 파생 클래스에서 기본 클래스로 변환합니다.
명시적 유형 변환 - 이러한 변환은 사전 정의된 함수를 사용하여 사용자가 명시적으로 수행합니다. 명시적 변환에는 캐스트 연산자가 필요합니다.
다음 예는 명시적인 유형 변환을 보여줍니다.
namespace TypeConversionApplication { class ExplicitConversion { static void Main(string[] args) { double d = 5673.74; int i; // 强制转换 double 为 int i = (int)d; Console.WriteLine(i); Console.ReadKey(); } } }
위 코드를 컴파일하고 실행하면 다음과 같은 결과가 생성됩니다.
5673
C# 유형 변환 방법
C#은 다음과 같은 내장 유형 변환을 제공합니다. 방법:
일련번호 | 방법 및 설명 |
---|---|
1 | ToBoolean 가능한 경우 유형을 부울로 변환하세요. |
2 | ToByte 유형을 바이트 유형으로 변환합니다. |
3 | ToChar 가능한 경우 유형을 단일 유니코드 문자 유형으로 변환하세요. |
4 | ToDateTime 유형(정수 또는 문자열 유형)을 날짜-시간 구조로 변환합니다. |
5 | ToDecimal 부동 소수점 또는 정수 유형을 10진수 유형으로 변환합니다. |
6 | ToDouble 유형을 배정밀도 부동 소수점으로 변환합니다. |
7 | ToInt16 유형을 16비트 정수 유형으로 변환합니다. |
8 | ToInt32 유형을 32비트 정수 유형으로 변환합니다. |
9 | ToInt64 유형을 64비트 정수 유형으로 변환합니다. |
10 | ToSbyte 유형을 부호 있는 바이트 유형으로 변환합니다. |
11 | ToSingle 유형을 작은 부동 소수점 유형으로 변환합니다. |
12 | ToString 유형을 문자열 유형으로 변환합니다. |
13 | ToType 유형을 지정된 유형으로 변환합니다. |
14 | ToUInt16 유형을 16비트 부호 없는 정수 유형으로 변환합니다. |
15 | ToUInt32 유형을 32비트 부호 없는 정수 유형으로 변환합니다. |
16 | ToUInt64 유형을 64비트 부호 없는 정수 유형으로 변환합니다. |
다음 예에서는 다양한 값 유형을 문자열 유형으로 변환합니다.
namespace TypeConversionApplication { class StringConversion { static void Main(string[] args) { int i = 75; float f = 53.005f; double d = 2345.7652; bool b = true; Console.WriteLine(i.ToString()); Console.WriteLine(f.ToString()); Console.WriteLine(d.ToString()); Console.WriteLine(b.ToString()); Console.ReadKey(); } } }
위 코드를 컴파일하고 실행하면 다음과 같은 결과가 생성됩니다.
75 53.005 2345.7652 True