Answered explicit cast vs Convert.to()

Matthieu

Member
Joined
Aug 15, 2020
Messages
23
Programming Experience
Beginner
Hi!

Can someone explain me the difference between:

C#:
class Program
    {
        static void Main(string[] args)
        {
            int number = 10;
            double dNumber = System.Convert.ToDouble(number);
           
        }
    }

And:

C#:
class Program
    {
        static void Main(string[] args)
        {
            int number = 10;
            double dNumber = (double) number;

        }
    }

Both instructions give the same output.

Thank you very much!

Greetings!
 
There's also difference when unboxing:
example input:
int number = 10;
object boxednumber = number;
invalid cast:
var dNumber = (double)boxednumber;
works:
var dNumber = (double)(int)boxednumber;
works:
var dNumber = System.Convert.ToDouble(boxednumber);
 
Those are all double conversions.
 

Latest posts

Back
Top Bottom