How to set null value to int in c#?

C#.NetNullIntNullable

C# Problem Overview


int value=0;

if (value == 0)
{
    value = null;
}

How can I set value to null above?

Any help will be appreciated.

C# Solutions


Solution 1 - C#

In .Net, you cannot assign a null value to an int or any other struct. Instead, use a Nullable<int>, or int? for short:

int? value = 0;

if (value == 0)
{
    value = null;
}

Further Reading

Solution 2 - C#

Additionally, you cannot use "null" as a value in a conditional assignment. e.g...

bool testvalue = false;
int? myint = (testvalue == true) ? 1234 : null;

FAILS with: Type of conditional expression cannot be determined because there is no implicit conversion between 'int' and '<null>'.

So, you have to cast the null as well... This works:

int? myint = (testvalue == true) ? 1234 : (int?)null;
UPDATE (Oct 2021):

As of C# 9.0 you can use "Target-Typed" conditional expresssions, and the example will now work as c# 9 can pre-determine the result type by evaluating the expression at compile-time.

Solution 3 - C#

You cannot set an int to null. Use a nullable int (int?) instead:

int? value = null;

Solution 4 - C#

int does not allow null, use-

int? value = 0  

or use

Nullable<int> value

Solution 5 - C#

 public static int? Timesaday { get; set; } = null;

OR

 public static Nullable<int> Timesaday { get; set; }

or

 public static int? Timesaday = null;

or

 public static int? Timesaday

or just

 public static int? Timesaday { get; set; } 


    static void Main(string[] args)
    {

       
    Console.WriteLine(Timesaday == null);

     //you also can check using 
     Console.WriteLine(Timesaday.HasValue);

        Console.ReadKey();
    }

The null keyword is a literal that represents a null reference, one that does not refer to any object. In programming, nullable types are a feature of the type system of some programming languages which allow the value to be set to the special value NULL instead of the usual possible values of the data type.

https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/null https://en.wikipedia.org/wiki/Null

Solution 6 - C#

Declare you integer variable as nullable eg: int? variable=0; variable=null;

Solution 7 - C#

int ? index = null;

public int Index
        {
            get
            {
                if (index.HasValue) // Check for value
                    return index.Value; //Return value if index is not "null"
                else return 777; // If value is "null" return 777 or any other value
            }
            set { index = value; }
        }

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
Questionuser2902180View Question on Stackoverflow
Solution 1 - C#p.s.w.gView Answer on Stackoverflow
Solution 2 - C#doublehelixView Answer on Stackoverflow
Solution 3 - C#JonView Answer on Stackoverflow
Solution 4 - C#A JView Answer on Stackoverflow
Solution 5 - C#Amadeu AntunesView Answer on Stackoverflow
Solution 6 - C#Francis TchatchouaView Answer on Stackoverflow
Solution 7 - C#dreamboatDevView Answer on Stackoverflow