I Java är null en litteral. Den används främst för att tilldela ett null-värde till en variabel. Ett null-värde är möjligt för en sträng, objekt eller datum och tid osv. Vi kan inte tilldela ett null-värde till de primitiva datatyperna som int, float osv..
När vi programmerar behöver vi oftast kontrollera om ett objekt eller en sträng är null eller inte för att utföra vissa uppgifter på det. För att kontrollera en null-sträng har vi några fördefinierade metoder för strängar. Låt oss ta några exempel med olika datatyper för att förstå hur vi kan kontrollera om de är null eller inte.
Contents
String
I Java kan en sträng vara null, tom eller blank, och var och en av dem är olika.
En tom sträng är en sträng som har ett värde, men dess längd är noll. Till exempel:
En tom sträng är en sträng som har blanksteg som sitt värde. Dess längd är alltid större än 0 och varken tom eller null. Till exempel:.
3. En null-sträng har inget värde och blir en null-sträng genom att tilldela den ett null-nyckelord som värde. Till exempel:
För att kontrollera om en String är null eller inte, använder vi jämförelseoperatorn (==). Låt oss ta ett exempel för att förstå hur vi kan använda den för null-kontroll.
// skapa klassen NullCheckExample1 för att kontrollera om en sträng är tom eller null.
Skriv om texten: System.out.println(‘string1 är ‘ + kontrolleraNullTomBlank(string1));.
System.out.println(‘string2 är ‘ + kollaNullTomBlank(string2));
System.out.println(‘string3 är ‘ + kontrolleraNullTomBlank(string3));
Skriv om texten: System.out.println(‘string4 är ‘ + kollaNullTomBlank(string4));.
// skapa metoden checkNullEmptyBlank() som kontrollerar om strängen är tom, null eller blank och returnerar resultatet till main() metoden.
För att kontrollera om en Java-objekt är null kan du använda följande kod:
public static boolean isNotNull(Object obj) {
return obj != null;
}
Denna metod tar emot ett objekt som parameter och returnerar true om objektet inte är null, annars returneras false.
Kontrollera om objektet är null i Java
Både Date och DateTime är icke-primitiva datatyper, vilket innebär att de kan lagra ett null-värde. Låt oss ta ett exempel med en date- och tidobjekt för att förstå hur vi kan kontrollera om objektet är null eller inte.
För att kontrollera om en Date-objekt är null eller inte, kan du skapa en klass som heter NullCheckExample2.
// deklarera en variabel av datatypen date och initialisera den med null.
// deklarera en variabel av typen string som kommer att lagra användarens inmatade datum i strängformat.
System.out.print(“Enter Date in dd/mm/yyyy format:”);
För att kontrollera om ett objekt är null i Java kan du använda en if-sats. Du kan till exempel använda följande kod för att kontrollera om ett objekt av typen SimpleDateFormat inte är null:
“`java
SimpleDateFormat sdf = new SimpleDateFormat();
if (sdf != null) {
// gör något med objektet
}
“`
Detta möjliggör säker hantering av objekt och undviker NullPointerException-fel som kan uppstå när man försöker arbeta med ett objekt som faktiskt är null.
En ny instans av SimpleDateFormat skapas med formatet ‘dd/MM/yyyy’.
För att kontrollera om date1 och date2 är null eller inte kan du använda jämförelseoperatorn.
Kontrollera om objektet är null i Java
För att kontrollera om en Java-objekt är Null eller inte kan vi antingen använda metoden isNull() i klassen Objects eller jämförelseoperatorn. Låt oss ta ett exempel för att förstå hur vi kan använda isNull()-metoden eller jämförelseoperatorn för att kontrollera om ett Java-objekt är null.
// skapa NullCheckExample3-klassen för att kontrollera om ett Java-objekt är null eller inte.
// create class User2 having variable of type User1
För att kontrollera om en Java-objekt är null kan du skapa en klass som heter NullCheckExample3. Detta gör det möjligt att utföra en kontroll för att se om objektet har ett värde eller inte.
// create class User2 having variable of type User1
Validate object is not null in Java
1. notNull() är en statisk metod i klassen Validate som används för att kontrollera om det passerade objektet är null eller inte.
2. Om det passerade objektet är null, höjer metoden ett undantag med ett formaterat meddelande.
3. Om det passerade objektet inte är null, returnerar metoden indata som den är.
Det går att kontrollera om ett objekt är null
Vanligtvis kontrollerar du om något är null genom att använda den strikta likhetoperatören (=== eller !==). Detta säkerställer att värdet verkligen inte är null: object !== null. Denna kod kontrollerar om variabeln object har värdet null.
How do you check whether Java object is empty or not?
Om array-referensen är null, kontrollerar du bara om referensen är null:
– Om arrayen har längden 0. Kontrollen liknar den ovan:
– Om delarrayerna är antingen null eller har längden 0.
– Om de individuella elementen i arrayen är satta till null.
How do you check if object is not null or undefined?
Lösningen. Funktionen isEmpty använder jämförelseoperatorn ( == ) för att kontrollera om argumentvärdet är null eller undefined.
1. Använd en if-sats och jämför objektet med null:
“`java
if (obj != null) {
// Koden som körs om objektet inte är null
}
“`
2. Använd den ternära operatorn för att tilldela ett värde baserat på om objektet är null eller inte:
“`java
“`
“`java
Optional
if(optional.isPresent()){
// Koden som körs om objektet inte är null
}
“`
4. Kontrollera typen av objekt innan du utför några operationer på det, eftersom försök att använda metoder på ett tomt/null-objekt kan orsaka NullPointerException.
“`java
if (!str.isEmpty()) {
// Koden som körs om strängen inte är tom eller har värdet ‘null’
}
“`
6.Använd Objects.requireNonNull() metod från java.util.Objects klassen :
“`Java
“`
7. Använd try-catch-block för att fånga NullPointerException om objektet är null:
“`java
try {
// Koden som kan orsaka NullPointerException
} catch (NullPointerException e) {
// Kod som körs om objektet är null
}
“`
8. Använd instanceof-operatorn för att kontrollera om objektet inte är av typen Null:
“`java
if (!(obj instanceof Null)) {
// Koden som körs om objektet inte är null
}
“`
9.Använd Apache Commons Lang-bibliotekets `ObjectUtils`-klass, och dess metod `isNotNull()` :
“`Java
if(ObjectUtils.isNotNull(obj)){
//Kod som körs när objektet inte är noll.
}
“`
10.Använd Guava-bibliotekets `Objects`-klass, och dess metod `equal()` :
“`Java
if(!Objects.equal(obj,null)){
//Kod som körs när objektet inte är noll.
}
“`
Hur man kontrollerar om null är null i Java
P.S. Kom ihåg att dessa metoder endast fungerar för referenstyper i Java och inte för primitiva typer.
How to validate object type in Java
Förklaring i tre punkter:
2. Man får tillbaka antingen true eller false som svar.
3. Det här används när man vill kontrollera vad slags typ ett objekt har innan man utför specifika operationer med det.