C# Nullable Typen Begrijpen: Null-waarden Veilig Afhandelen
C# biedt speciale nullable typen waar je zowel normale waarden als null aan kunt toewijzen.
Bijvoorbeeld: Nullable<Int32> kan waarden van -2.147.483.648 tot 2.147.483.647 of null opslaan. Nullable<bool> kan true, false of null bevatten.
Syntaxis:
<datatype>? <variabelenaam> = null;
Voorbeeld: Nullable typen gebruiken
using System;
namespace RekenmachineApplicatie {
class NullablesDemo {
static void Main(string[] args) {
int? num1 = null;
int? num2 = 45;
double? num3 = new double?();
double? num4 = 3.14157;
bool? boolval = new bool?();
Console.WriteLine("Nullables: {0}, {1}, {2}, {3}", num1, num2, num3, num4);
Console.WriteLine("Nullable boolean: {0}", boolval);
Console.ReadLine();
}
}
}
Uitvoer:
Nullables: , 45, , 3.14157 Nullable boolean:
De Null-coalescerende Operator (??)
De null-coalescerende operator werkt met nullable waardetypen en referentietypen. Het converteert een operand naar het type van een ander nullable (of niet-nullable) waardetype waar impliciete conversie mogelijk is.
Als de eerste operand null is, retourneert de operator de tweede operand; anders de eerste.
Voorbeeld
using System;
namespace RekenmachineApplicatie {
class NullablesDemo {
static void Main(string[] args) {
double? num1 = null;
double? num2 = 3.14157;
double num3;
num3 = num1 ?? 5.34;
Console.WriteLine("Waarde van num3: {0}", num3); // 5.34
num3 = num2 ?? 5.34;
Console.WriteLine("Waarde van num3: {0}", num3); // 3.14157
Console.ReadLine();
}
}
}
Uitvoer:
Waarde van num3: 5.34 Waarde van num3: 3.14157
C Taal
- AgCu20 Legering: Uitgebreide Mechanische & Thermische Eigenschappen bij 23°C
- Legering 15CDV6 (DIN 1.7734): Hoge Sterkte & Zwaarte, Makkelijk Lassen
- DIN 1.7734 5 – 15CDV6 Legering: Hoge Sterkte, Zwaarte & Makkelijk Lassen
- 15CDV6 Legering (DIN 1.7734) – Hoge Sterkte, Makkelijk Lassen, Superieure Zwaarte
- PtNi10 Legering: Uitgebreide Mechanische & Thermische Eigenschappen
- PtIr10 Platina-Iridium Legering: Hoge Sterkte, Hoog-Temperatuur Materiaal
- Corroplast Plaat – Hoogpresterend, Corrosievast Staal voor Precisie Bewerking
- X46 AM FCE: Hoogpresterend API 5L-staal voor kritieke pijpleidingtoepassingen
- Ferro-Titanit® Cromoni – Hoogsterk, Niet-Magnetisch Titaniumlegering
- C#-attributen onder de knie: code verrijken met metadata
- Java 8 Optional onder de knie krijgen: Praktische gids voor null-veilige code