If I try to do this it doesn't work:

static void Main(string[] args)
{
    int a = 5000;
    Console.WriteLine((string)a);
}

But somehow this works fine:

static void Main(string[] args)
{
    int a = 5000;
    Console.WriteLine(a + "");
}

Why is that? Is it because the first is trying to change the base type and the second just appends the value to the string?

Edit
Report