- Learn C# in 7 days
- Gaurav Aroraa
- 250字
- 2021-07-08 09:51:27
Explicit conversion
Explicit conversion is the conversion that is performed by the user explicitly with the use of the cast operator; that's why this is also known as type casting. Explicit conversion is also possible using built-in type conversion methods. For more information, refer to https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/explicit-numeric-conversions-table.
Let's take a look at the following code snippet, which shows implicit/explicit type conversion in action:
private static void ImplicitExplicitTypeConversionExample() { WriteLine("Implicit conversion"); int numberInt = 2589; double doubleNumber = numberInt; // implicit type conversion WriteLine($"{nameof(numberInt)} of type:{numberInt.GetType().FullName} has value:{numberInt}"); WriteLine($"{nameof(doubleNumber)} of type:{doubleNumber.GetType().FullName} implicitly type casted and has value:{doubleNumber}"); WriteLine("Implicit conversion"); doubleNumber = 2589.05D; numberInt = (int)doubleNumber; //explicit type conversion WriteLine($"{nameof(doubleNumber)} of type:{doubleNumber.GetType().FullName} has value:{doubleNumber}"); WriteLine($"{nameof(numberInt)} of type:{numberInt.GetType().FullName} explicitly type casted and has value:{numberInt}"); }
In the preceding code-snippet, we discussed implicit and explicit conversion when we assign a variable numberInt of int type to a variable doubleNumber of double type, which is called implicit type conversion, and the reverse is an explicit type conversion that requires a casting using int. Note that implicitly, type conversion does not require any casting, but explicitly, conversion requires type casting, and there are chances for loss of data during explicit conversion. For instance, our explicit conversion from double to int would result in a loss of data (all precision would be truncated while a value is assigned to int type variable). This code produces the following result:

- 極簡算法史:從數學到機器的故事
- Functional Python Programming
- Android應用程序開發與典型案例
- OpenShift開發指南(原書第2版)
- C語言程序設計案例教程(第2版)
- 單片機C語言程序設計實訓100例:基于STC8051+Proteus仿真與實戰
- HoloLens Beginner's Guide
- Raspberry Pi for Secret Agents(Third Edition)
- Java Web程序設計
- Python漫游數學王國:高等數學、線性代數、數理統計及運籌學
- ANSYS Fluent 二次開發指南
- Android系統原理及開發要點詳解
- Python全棧數據工程師養成攻略(視頻講解版)
- Visual Studio Code 權威指南
- Scala編程(第5版)