c type casting explicit implicit data conversion with example
예제가 포함 된 C #의 데이터 형식 캐스팅 :이 자습서에서는 명시 적 및 암시 적 변환, 도우미 클래스를 사용하여 문자열로 변환 및 데이터 형식 변환에 대해 설명합니다.
C #의 데이터 형식 및 변수 이전 튜토리얼에서 자세히 설명했습니다.
유형 캐스팅을 사용하여 한 데이터 유형을 다른 데이터 유형으로 변환하는 방법을 배웠습니다. 형변환은 암시 적 변환과 명시 적 변환의 두 부분으로 나뉩니다.
이 자습서에서 C # 유형 캐스팅에 대해 자세히 살펴 보겠습니다.
더 작은 데이터 유형이 더 큰 데이터 유형으로 변환되거나 파생 된 클래스가 기본 클래스로 변환 될 때 암시 적 변환입니다.
반면 반대 방향으로의 변환을 명시 적 변환이라고합니다. 더 높은 데이터 유형을 더 작은 데이터 유형으로 변환하려면 캐스트 연산자가 필요합니다. 이 유형의 변환은 유형이 안전하지 않으며 데이터가 손실 될 수 있습니다.
학습 내용 :
YouTube에서 MP4 변환기 온라인 무료 다운로드 없음
C #의 데이터 형식 캐스팅
이 자습서에서는 한 데이터 유형을 다른 데이터 유형으로 변환하는 방법에 대해 자세히 설명합니다. C #은 컴파일 중에 정적 유형이므로 변수 선언 후에는 다른 데이터 유형의 값을 저장하는 데 사용할 수 없습니다.
그러나 이는 해당 유형을 변수 유형으로 변환하여 극복 할 수 있습니다.
문자열 값을 정수로 변환 해 보겠습니다.
int a; a = 'some random string';
이것을 컴파일하면 ' 'string'유형을 'int'로 암시 적으로 변환 할 수 없습니다.'라는 오류가 발생합니다.
데이터 유형은 데이터 유형에 따라 더 나눌 수 있습니다.
정적 변수 C ++ 초기화
- 원어
- 비 원시적
원시 데이터 유형 기본이 아닌 데이터 유형은 사용자가 정의하는 반면 사전 정의됩니다. byte, int, short, float, long, char, bool 등과 같은 데이터 유형을 Primitive 데이터 유형이라고합니다. 기본이 아닌 데이터 유형 클래스, 열거 형, 배열, 대리자 등을 포함합니다.
이 튜토리얼에서는 형변환을 위해 C #에서 제공하는 다양한 방법을 살펴볼 것입니다.
암시 적 변환
암시 적 변환은 가장 간단한 변환 유형입니다. 이 유형의 변환은 유형에 안전하며 변환 중에 데이터 손실이 발생하지 않습니다. 이러한 변환은 파생 클래스를 기본 클래스로 변환합니다.
예를 들어 다른 변수에 저장해야하는 값이 데이터 손실없이 직접 맞을 수있는 경우 암시 적 변환을 직접 사용할 수 있습니다. '정수'값이 있고 그 값을 'long'에 전달하려고한다고 가정 해 보겠습니다.
int i = 75; long j = i;
명시 적 변환
암시 적 변환에서 우리는 파생 된 클래스를 데이터 손실없이 기본 클래스로 직접 변환 할 수 있지만 데이터 손실 가능성이있는 경우 컴파일러에서 명시 적 변환을 수행해야한다는 것을 알았습니다.
명시 적 변환 또는 캐스트는 프로그램이 가능한 데이터 손실을 알고 변환을 수행하려는 컴파일러에 정보를 전달하는 프로세스입니다.
예를 들어 더 높은 숫자 값을 더 낮은 값으로 변환하는 경우.
double d = 75.25; int i; i = (int)d;
이제 'i'를 인쇄하면 '75'가 인쇄된다는 것을 알 수 있습니다. 소수점 이하의 모든 데이터는 변환시 손실됩니다.
다른 도우미 클래스를 사용한 변환
문자열을 숫자로 변환하거나 바이트 배열을 정수로 또는 16 진수 문자열을 다른 숫자 유형으로 변환하는 것과 같이 호환되지 않는 다른 유형간에 변환하려면 직접 변환이 불가능하므로 다른 도우미 클래스가 필요합니다.
변환 클래스에있는 메서드를 사용하거나 다양한 숫자 형식에 사용할 수있는 TryParse 메서드를 사용하여 데이터 형식을 다른 데이터 형식으로 변환 할 수 있습니다. 문자열을 숫자로 변환하는 경우 TryParse가 더 유용합니다. 매우 간단하고 효율적입니다.
int number = Int32.Parse(“123”);
여기에서는 구문 분석을 사용하여 문자열을 정수로 변환했습니다.
Convert 메서드 인 다른 변환 방법을 살펴 보겠습니다.
내부에 존재하는 정적 메서드 수업 전환 기본 데이터 유형으로 또는 그 반대로 변환하는 데 매우 유용합니다. 지원되는 데이터 유형 중 일부는 Char, Boolean, Int32, int64, Double, Decimal, String, Int16 등입니다. Convert 클래스는 다른 변환을위한 메서드도 지원합니다.
문자열로 변환
Convert.ToString 메서드는 데이터 형식을 문자열로 변환합니다. 에서 예 아래에서는 정수 데이터 유형을 문자열 데이터 유형으로 변환합니다.
.7z 파일이란 무엇입니까?
int number = 75; string s = Convert.ToString(number);
InvalidCastException
때로는 컴파일러가 한 유형을 다른 유형으로 변환하기 위해 수행 한 작업이 유효한지 여부를 이해하지 못할 수 있습니다. 이로 인해 런타임 중에 컴파일러가 실패합니다. 유형 변환이 실패하면 잘못된 예외가 발생합니다.
InvalidCastException은 명시 적 또는 형식 변환 구현이 변환에 사용되는 두 데이터 형식 모두에서 지원되지 않을 때 발생합니다.
결론
이 튜토리얼에서는 변환 유형과 서로 다른 데이터 유형 간의 변환을 수행하는 방법을 배웠습니다. 암시 적 변환은 파생 클래스가 int와 같은 기본 클래스로 float 형식으로 변환되는 변환입니다.
명시 적 변환은 데이터 손실을 유발할 수있는 변환입니다. 명시 적 변환은 기본 클래스를 파생 클래스로 변환합니다. 헬퍼 클래스의 도움을 받으려면 다른 데이터 유형에 대해 변환을 수행해야 할 수도 있습니다. 'Parse'및 'ConvertTo'와 같은 도우미 클래스는 한 데이터 유형을 다른 데이터 유형으로 변환하는 다양한 방법을 제공합니다.
또한 컴파일러가 두 유형 간의 변환을 이해하지 못할 때 발생하는 예외에 대해서도 배웠습니다.
추천 도서
- 예제가 포함 된 C # 데이터 형식 및 변수
- C ++ 데이터 유형
- C ++의 형식 변환
- 데이터 마이닝 : 데이터 분석의 프로세스, 기술 및 주요 문제
- 데이터 마트 자습서-데이터 마트의 유형, 예 및 구현
- 마이그레이션 테스트 유형 : 각 유형에 대한 테스트 시나리오 포함
- 데이터 수집 전략을 갖춘 10 개 이상의 최고의 데이터 수집 도구
- 테스트 데이터 관리를위한 IBM Rational Quality Manager의 데이터 풀 기능