昨天在調試一段Android程序的時候發現總是出現NullPointerException,是來自一句System.out.println(),但是把里面的內容分拆了幾次都找不到哪里有null,最后發現居然是因為最終輸出的字符串是null!
一直以來,在JavaSE里,如果字符串本身是null,System.out.println()打印該字符串,會在終端輸出“null”,而在Android里卻是直接拋出NullPointerException,整個程序都會被終止。
大家可以測試一下下面的語句在兩種環境下的運行結果:
一直以來,在JavaSE里,如果字符串本身是null,System.out.println()打印該字符串,會在終端輸出“null”,而在Android里卻是直接拋出NullPointerException,整個程序都會被終止。
大家可以測試一下下面的語句在兩種環境下的運行結果:
1 String s = null;
2 System.out.println(s);
2 System.out.println(s);