1、類型
null表示的是一個對象的值,而並不是一個字符串。例如聲明一個對象的引用,String a = null ;
""表示的是一個空字符串,也就是說它的長度爲0。例如聲明一個字符串String str = "" ;
2、內存分配
String str = null ; 表示聲明一個字符串對象的引用,但指向爲null,也就是說還沒有指向任何的內存空間;
String str = ""; 表示聲明一個字符串類型的引用,其值爲""空字符串,這個str引用指向的是空字符串的內存空間;
在java中變量和引用變量是存在棧中(stack),而對象(new產生的)都是存放在堆中(heap):
console.log(typeof null) //object
console.log(typeof "") //string