Jede einzelne Programmiersprache, einschließlich Java, ist mit Null begrenzt. Es gibt keinen Programmierer, der im Code kein Problem mit Null hatte. Programmierer sind hauptsächlich damit konfrontiert NullPointerException wenn sie versuchen, einige Operationen mit Nulldaten auszuführen. NullPointerException ist eine verfügbare Klasse, die zum Paket java.lang gehört.
Bevor Sie die Fakten von Null verstehen, müssen Sie über Kenntnisse über Java-Variablen verfügen. Wenn Sie nicht wissen, was Java-Variable ist, gehen Sie über den folgenden Link:
Konvertieren eines Strings in ein JSON-Objekt
Jeder Entwickler sollte über die folgenden Fakten zu Null in Java Bescheid wissen:
Groß- und Kleinschreibung beachten
In Java können wir null nicht als NULL oder 0 wie in der C-Programmierung schreiben, da null ein Literal ist und bei Schlüsselwörtern in Java die Groß-/Kleinschreibung beachtet wird.
Nehmen wir ein Beispiel, um das Verhalten von null zu verstehen, bei dem die Groß-/Kleinschreibung beachtet wird.
NullExample1.java
// import classes and packages if any public class NullExample1 { // main() method start public static void main (String[] args) throws java.lang.Exception { // declare and initialize an object with NULL Object obj1 = NULL; // declare and initialize an object with null Object obj2 = null; // print both objects System.out.println('The value of obj1 is: '+obj1); System.out.println('The value of obj2 is: '+obj2); } }
Ausgabe:
Referenzvariablenwert
Standardmäßig hat jede einzelne Referenzvariable in Java einen Nullwert. Eine Referenzvariable wird verwendet, um Objekte/Werte vom Referenztyp in Java anzuzeigen und zu speichern. Klassen, Arrays, Aufzählungen und Schnittstellen usw. sind einige Referenztypen in Java.
Hashmap in Java
Ein Referenztyp speichert also einen Nullwert, wenn kein Objekt an einen Referenztyp übergeben wird.
Nehmen wir ein Beispiel, um zu verstehen, wie eine Referenzvariable für einen Nullwert funktioniert:
NullExample2.java
// import classes and packages if any public class NullExample2 { // declare two objects private static Object obj1; private static Object obj2; // main() method start public static void main (String[] args) { // print both objects System.out.println('The value of obj1 is: '+obj1); System.out.println('The value of obj2 is: '+obj2); } }
Ausgabe:
Nulltyp
In Java ist null weder ein Objekt noch ein Typ. Es handelt sich um einen speziellen Wert, den wir jeder Referenztypvariablen zuweisen können. Wir können null in jeden gewünschten Typ umwandeln, z. B. String, Int, Double usw.
Nehmen wir ein Beispiel, um zu verstehen, wie wir jedem Referenztyp Nullwerte zuweisen können.
Auswahl sortieren
NullExample3.java
// import classes and packages if any public class NullExample3 { // main() method start public static void main (String[] args) { // pass a null value to a different type of variable // pass null to String String str = null; // pass null to Integer Integer itr = null; // pass null to Double Double dbl = null; // casting null to String String castedStr = (String)null; // casting null to Integer Integer castedItr = (Integer)null; // casting null to Double Double castedDbl = (Double)null; // print all reference type System.out.println('The value of str is: '+str); System.out.println('The value of itr is: '+itr); System.out.println('The value of dbl is: '+dbl); System.out.println('The value of castedStr is: '+castedStr); System.out.println('The value of castedItr is: '+castedItr); System.out.println('The value of castedDbl is: '+castedDbl); } }
Ausgabe:
Autoboxing und Unboxing
Autoboxen Und Auspacken sind die beiden wichtigsten Operationen, die wir in Java ausführen. Der Compiler wirft NullPointerException wenn wir während der Ausführung der Operationen einem beliebigen primitiven Box-Datentyp einen Nullwert zuweisen.
Nehmen wir ein Beispiel, um das Autoboxing und den Unboxing-Fakt von Null zu verstehen.
NullExample4.java
Sklearn-Genauigkeitswert
// import classes and packages if any public class NullExample4 { // main() method start public static void main (String[] args) throws java.lang.Exception { // pass null value to a reference type Integer itr = null; // perform unboxing operation int data = itr; // print both objects System.out.println('The value of itr is: '+itr); System.out.println('The value of data is: '+data); } }
Ausgabe:
Die Instanz des Operators
Um zu prüfen, ob ein Objekt Ist eine Instanz des angegebenen Typs oder nicht, verwenden wir die Instanz von Operator. Der Instanz von Der Operator gibt „true“ zurück, wenn der Wert des Ausdrucks zur Laufzeit nicht null ist. Es spielt eine wichtige Rolle bei Typisierungsprüfungen.
Nehmen wir ein Beispiel, um das zu verstehen Instanz von Operator:
NullExample5.java
// import classes and packages if any public class { // main() method start public static void main (String[] args) throws java.lang.Exception { // pass null value to a reference type Integer m = null; // pass a value to a reference type Integer n = 20; // print instanceof values System.out.println(m instanceof Integer); System.out.println(n instanceof Integer); } }
Ausgabe:
Statisch vs. Nichtstatische Methoden
Wir können keine nicht statische Methode für eine Referenzvariable mit einem Nullwert aufrufen. Wenn wir es aufrufen, wird eine NullPointerException ausgelöst, aber wir können die statische Methode mit Referenzvariablen mit Nullwerten aufrufen. Da statische Methoden mithilfe der statischen Bindung gebunden werden, lösen sie keine Nullzeiger-Ausnahme aus.
Nehmen wir ein Beispiel, um die Tatsache von null zu verstehen:
NullExample6.java
Python-Liste initialisieren
// import classes and packages if any public class NullExample6 { // define static method public static void staticMethod() { //it can be called by using a null reference System.out.println('static method can be called by null reference.'); } // define non static method public void nonStaticMethod() { //it cannot be called by using a null reference System.out.println('static method cannot be called by a null reference.'); } // main() method start public static void main (String[] args) throws java.lang.Exception { NullExample6 exp = null; exp.staticMethod(); exp.nonStaticMethod(); } }
Ausgabe:
== und != Operatoren
In Java sind diese beiden Operatoren mit Null zulässig. Beide Operatoren sind nützlich, um bei Objekten in Java Null zu überprüfen.
Nehmen wir ein Beispiel, um zu verstehen, wie diese beiden Operatoren mit Null funktionieren.
NullExample7.java
// import classes and packages if any public class NullExample7 { // main() method start public static void main (String[] args) { // pass null value to String type of variables // pass null to str1 String str1 = null; // pass null to str2 String str2 = null; // pass null to str3 String str3 = 'Test'; // compare strings if(str1 == str2){ System.out.println('str1 and str2 both are equal'); }else{ System.out.println('str1 and str2 are not equal'); } if(str2 == str3){ System.out.println('str2 and str3 both are equal'); }else{ System.out.println('str2 and str3 are not equal'); } if(str3 == str1){ System.out.println('str3 and str1 both are equal'); }else{ System.out.println('str3 and str1 are not equal'); } } }
Ausgabe:
Jeder Java-Entwickler sollte über Kenntnisse aller oben besprochenen Fakten von Null verfügen.