C# - Nullables
C# biedt een speciaal gegevenstype, de nullable typen, waaraan u zowel een normaal bereik van waarden als null-waarden kunt toewijzen.
U kunt bijvoorbeeld elke waarde van -2.147.483.648 tot 2.147.483.647 of null opslaan in een Nullable
< data_type> ? <variable_name> = null;
Het volgende voorbeeld demonstreert het gebruik van nullable datatypes −
Live demousing System; namespace CalculatorApplication { class NullablesAtShow { static void Main(string[] args) { int? num1 = null; int? num2 = 45; double? num3 = new double?(); double? num4 = 3.14157; bool? boolval = new bool?(); // display the values Console.WriteLine("Nullables at Show: {0}, {1}, {2}, {3}", num1, num2, num3, num4); Console.WriteLine("A Nullable boolean value: {0}", boolval); Console.ReadLine(); } } }
Wanneer de bovenstaande code wordt gecompileerd en uitgevoerd, levert dit het volgende resultaat op −
Nullables at Show: , 45, , 3.14157 A Nullable boolean value:
De Null Coalescing Operator (??)
De null-coalescentie-operator wordt gebruikt met de null-waardetypen en referentietypen. Het wordt gebruikt voor het converteren van een operand naar het type van een andere nullable (of niet) waardetype operand, waarbij een impliciete conversie mogelijk is.
Als de waarde van de eerste operand nul is, retourneert de operator de waarde van de tweede operand, anders retourneert deze de waarde van de eerste operand. Het volgende voorbeeld legt dit uit −
Live demousing System; namespace CalculatorApplication { class NullablesAtShow { static void Main(string[] args) { double? num1 = null; double? num2 = 3.14157; double num3; num3 = num1 ?? 5.34; Console.WriteLine(" Value of num3: {0}", num3); num3 = num2 ?? 5.34; Console.WriteLine(" Value of num3: {0}", num3); Console.ReadLine(); } } }
Wanneer de bovenstaande code wordt gecompileerd en uitgevoerd, levert dit het volgende resultaat op −
Value of num3: 5.34 Value of num3: 3.14157
C Taal