Search code examples
c#nullable

How to convert from int to int?, in C#?


I have a int i want to save as a int? Is it possible and if so how?


Solution

  • There's an implicit conversion:

    int nonNullable = 5;
    int? nullable = nonNullable;
    

    (This is given in section 6.1.4 of the C# specification.)

    The reverse operation is unsafe, of course, because the nullable value could be null. There's an explicit conversion, or you can use the Value property:

    int? nullable = new int?(5); // Just to be clear :)
    
    // These are equivalent
    int nonNullable1 = (int) nullable;
    int nonNullable2 = nullable.Value;