在Java編程中,我們經常會用到 null 和空字符串(empty string)。然而,這兩者并不相同,它們有自己的特定用途。
Null
Object obj = null;
Null是Java提供的一個特殊值,表示變量未被賦值,或者表示變量沒有引用任何對象。當一個變量被賦值為 null 時,它指向的對象空間就會被系統回收,這是Java的垃圾回收機制。
在使用變量之前,我們通常會檢查它是否為 null,以避免 NullPointerException (空指針異常)。
if (obj != null) { System.out.println(obj.toString()); } else { System.out.println("對象為空!"); }
空字符串
String str = "";
空字符串是一個長度為零的字符串,表示字符串中沒有任何字符。和 null 不同,空字符串是一個有效的值。
我們通常用空字符串來初始化變量,或者將一個字符串清空。比如,將一個輸入框中的文本清空:
textField.setText("");
在判斷一個字符串是否為空時,我們可以使用 isEmpty() 方法:
if (str.isEmpty()) { System.out.println("字符串為空!"); } else { System.out.println(str); }
總之, null 和空字符串在Java中有著不同的含義和使用場景。當我們不確定一個變量是否被賦值時,應該使用 null。而空字符串則表示一個確確實實的值為空,是一個常見的字符串處理方式。