logo

Как да проверя null в Java?

В Java, нула е буквално. Използва се главно за присвояване на нулева стойност на променлива. Възможна е нулева стойност за низ, обект или дата и час и т.н. Не можем да присвоим нулева стойност на примитивните типове данни като int, float и т.н.

В програмирането обикновено трябва да проверим дали даден обект или низ е нулев или не, за да изпълним някаква задача върху него. За да проверим нулев низ, имаме някои предварително дефинирани методи за низ. Нека вземем няколко примера за различни типове данни, за да разберем как можем да проверим дали са нулеви или не.

низ

В Java String може да бъде нулев, празен или празен и всеки един от тях е различен.

1. Празният низ е обект от низ, който има някаква стойност, но дължината му е равна на нула. Например:

 String str1 = '' 

2. Празен низ е низ, чиято стойност има интервал. Дължината му винаги е по-голяма от 0 и не е нито празна, нито нулева. Например:

 String str2 = '' 

3. Нулев низ няма стойност и прави низ нулев чрез присвояване на a нула ключова дума като стойност за него. Например:

 String str3 = null 

За да проверим дали даден низ е нулев или не, използваме оператора за сравнение (==). Нека вземем негов пример, за да разберем как можем да го използваме за нулева проверка.

NullCheckExample1.java

 // import required classes and packages packagejavaTpoint.javacodes; // create class NullCheckExample1 class to check whether a string is empty or null class NullCheckExample1 { // main() method start public static void main(String[] args) { // create null, empty, and blank strings String string1 = null; String string2 = ''; String string3 = ' '; String string4 = 'Test'; // check whether string1 is null, empty, or blank System.out.println('string1 is ' + checkNullEmptyBlank(string1)); // check whether string2 is null, empty, or blank System.out.println('string2 is ' + checkNullEmptyBlank(string2)); // check whether string3 is null, empty, or blank System.out.println('string3 is ' + checkNullEmptyBlank(string3)); // check whether string4 is null, empty, or blank System.out.println('string4 is ' + checkNullEmptyBlank(string4)); } // create checkNullEmptyBlank() method which check whether the string is empty, null or blank and return result to the main() method public static String checkNullEmptyBlank(String strToCheck) { // check whether the given string is null or not if (strToCheck == null) { return 'NULL'; } // check whether the given string is empty or not else if(strToCheck.isEmpty()) { return 'EMPTY'; } // check whether the given string is blank or not else if(strToCheck.isBlank()) { return 'BLANK'; } else { return 'neither NULL, EMPTY nor BLANK'; } } } 

Изход:

Как да проверите null в Java

Дата и обект DateTime

Дата и Дата и час са непримитивни типове данни, така че могат да съхраняват нулева стойност. Нека вземем пример за обект за дата и час, за да разберем как можем да проверим обект с нулева дата или дата и час.

NullCheckExample2.java

 //import required classes and packages packagejavaTpoint.javacodes; importjava.text.ParseException; importjava.text.SimpleDateFormat; importjava.util.Date; importjava.util.Scanner; //create class NullCheckExample2 class to check whether the Date object is null or not public class NullCheckExample2 { // declare a variable of date type and initialize it with null public static Date d1 = null; public static Date finalResult; // main() method start public static void main(String args[]) { // declare a variable of type string that will store the user-entered date in string format String d2; // create scanner class object Scanner sc = new Scanner(System.in); System.out.print('Enter Date in dd/mm/yyyy format:'); // take input from user and initialize variable d2 = sc.nextLine(); // close scanner class obj sc.close(); // create an instance of the SimpleDateFormat class for modifying the date object SimpleDateFormatobj = new SimpleDateFormat('dd/MM/yyyy'); // use try-catch to parse string to date try { finalResult = obj.parse(d2); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); } // check whether date1 and date2 is null or not by using comparison operator if(d1 == null) { System.out.println('Date d1 is NULL.'); } if(finalResult == null) { System.out.println('Date d2 is NULL.'); }else { System.out.println('Date d2 is not NULL.'); } } } 

Изход:

Как да проверите null в Java

Java обект

За да проверим дали даден Java обект е Null или не, можем да използваме метода isNull() на Обекти клас или оператор за сравнение. Нека вземем пример, за да разберем как можем да използваме метода isNull() или оператора за сравнение за нулева проверка на Java обект.

NullCheckExample3.java

 // import required classes and packages packagejavaTpoint.javacodes; // create NullCheckExample3 class to check whether Java object is null or not public class NullCheckExample3 { // main() method start public static void main(String[] args) { // create instance of User2 User2 userObj = new User2(); // get data of User2 by calling User1 firstUser = userObj.getFirstUser(); // check whether firstUser is null or not if (firstUser == null) { System.out.println('Object is Null'); } else { System.out.println('Object is not Null'); // set name for user1 firstUser.setName('Paul'); System.out.println(firstUser.getName()); } } } // create User1 class having a name attribute class User1 { // declare name variable String name; // getter for getting name of User1 public String getName() { // return name of User1 return name; } // setter for setting name of User1 public void setName(String name) { this.name = name; } } // create class User2 having variable of type User1 class User2 { User1 obj; // getter to get object of User1 public User1 getFirstUser() { returnobj; } } 

Изход:

Как да проверите null в Java

NullCheckExample4.java

 // import required classes and packages packagejavaTpoint.javacodes; importjava.util.Objects; // create NullCheckExample3 class to check whether Java object is null or not public class NullCheckExample4 { // main() method start public static void main(String[] args) { // create instance of User2 User2 userObj = new User2(); // get data of User2 by calling User1 firstUser = userObj.getFirstUser(); // check whether firstUser is null or not if (Objects.isNull(firstUser) ){ System.out.println('Object is Null'); } else { System.out.println('Object is not Null'); // set name for user1 firstUser.setName('Paul'); System.out.println(firstUser.getName()); } } } // create User1 class having a name attribute class User1 { // declare name variable String name; // getter for getting name of User1 public String getName() { // return name of User1 return name; } // setter for setting name of User1 public void setName(String name) { this.name = name; } } // create class User2 having variable of type User1 class User2 { User1 obj; // getter to get object of User1 public User1 getFirstUser() { returnobj; } } 

Изход:

Как да проверите null в Java