Was ist die Nullable Integer und wo kann es verwendet werden?Nullable Ganzzahl in .NET
Antwort
Die Nullable-Ganzzahl int?
oder Nullable<int>
ist ein Werttyp in C#, dessen Wert null
oder ein ganzzahliger Wert sein kann. Es ist standardmäßig null
anstelle von 0
, und ist nützlich für die Darstellung von Dingen wie value not set
(oder was auch immer Sie es darstellen möchten).
Auch gültig in VB - Dim MyInt As Integer? –
'Dim myint als Nullable of Integer '?? –
Im vorausgesetzt, Sie int? x;
bedeuten, die eine Abkürzung ist für Nullable<int> x;
Dies ist eine Möglichkeit, NULL-Werte Werttypen hinzuzufügen, und ist nützlich in Szenarien wie Datenbankverarbeitung, wo Werte können auch auf null gesetzt werden. Standardmäßig enthält ein nullwertfähiger Typ null und Sie verwenden HasValue, um zu prüfen, ob ein Wert angegeben wurde. Sie können Werte zuweisen und sie ansonsten wie einen normalen Werttyp verwenden.
Dies ist keine gültige C# -Syntax. "var" sollte verwendet werden, anstatt den Typ einer Variablen zu deklarieren, d. h. wenn der Variablentyp aus seiner Verwendung abgeleitet werden kann. –
Zu viel Javascript. Fest. –
Eine nullbare ganze Zahl kann auf verschiedene Arten verwendet werden. Es kann einen Wert oder null haben. Wie hier:
int? myInt = null;
myInt = SomeFunctionThatReturnsANumberOrNull()
if (myInt != null) {
// Here we know that a value was returned from the function.
}
else {
// Here we know that no value was returned from the function.
}
Angenommen, Sie das Alter einer Person wissen wollen. Es befindet sich in der Datenbank, wenn die Person ihr Alter angegeben hat.
Wenn die Person, wie die meisten Frauen, ihr Alter nicht angegeben hat, dann enthält die Datenbank null.
Dann überprüfen Sie den Wert age
:
if (age == null) {
// The person did not submit his/her age.
}
else {
// This is probably a man... ;)
}
int? Jahr;
Sie könnten sie in Ihre Controller-Aktionen einfügen und wenn die URL nicht das Jahr Parameter Jahr enthalten würde Null, im Gegensatz zu Standard auf 0, die ein gültiger Wert für Ihre Anwendung sein könnte.
Ein Nullable-Typ akzeptiert seinen Werttyp und einen zusätzlichen Nullwert. Dies ist nützlich für Datenbanken und andere Datentypen, die Elemente enthalten, denen möglicherweise kein Wert zugewiesen wurde.
Wenn Sie das Ergebnis oder die Ausgabe aus der jeweiligen Geschäftslogik nicht vorhersagen konnten, sollten Sie NULL-Typen verwenden.
Der Standardwerttyp (Bsp. Int) darf nicht null sein. Es wird ein Fehler ausgegeben, während versucht wird, einen Nullwert zuzuweisen. Aber die Nullable-Typen werden das nicht tun.
Danke.
- 1. Nullable-Typen in .net
- 2. Nullable Typen in .Net Programmiersprache
- 3. Nullable Typen in VB.NET?
- 4. Ermitteln der Zeichenfolgenlänge einer Ganzzahl in .NET
- 5. Multiplizieren sehr große Ganzzahl in .NET
- 6. Wie sind Nullable-Typen unter der Haube in .net implementiert?
- 7. Nullable-Methode Argumente in C#
- 8. Nullable Enum Nullable Type Frage
- 9. Wie kann ich eine sehr große Ganzzahl in .NET darstellen?
- 10. Nullable Int-Spalte in DataSet
- 11. .NET 2.0 Nullable Typen und Datenbank Null Überlegungen
- 12. Nullable Datentypen in Databinding?
- 13. Nullable-Werte in C++
- 14. Nullable Datum in Freemarker
- 15. Jahr in Nullable DateTime
- 16. Nullable Parameterwerte in MSBuild
- 17. Was ist Nullable Typ in C#?
- 18. C# Nullable vs Non-Nullable DateTime-Tags
- 19. Wie int.TryParse mit nullable int verwenden?
- 20. Nullable GUID
- 21. Nullable ToString()
- 22. typeof (DateTime?). Name == Nullable`1
- 23. Android ksoap2 Nullable type
- 24. Verlauf der VB.NET Nullable Syntax
- 25. Ganzzahl Mathe in C#
- 26. Konvertieren Zeichenfolge in Ganzzahl
- 27. Speicherleck in Ganzzahl C++
- 28. Fließkommazahl in Ganzzahl umwandeln?
- 29. Nullable Rückgabetyp in Oracle-Funktion
- 30. Verwendung von @Nullable in Java
Ich entfernte die ASP.NET (-MVC) -Tags, da dies wirklich nicht mit diesen beiden Technologien zusammenhängt (es ist eine allgemeine .NET-Funktion). – M4N
Beachten Sie, dass seit .NET 2.0 alle Werttypen als nullable deklariert werden können, nicht nur "int". http://msdn.microsoft.com/en-us/library/1t3y8s4s(VS.80).aspx –