0

所以我有一些工作代碼,允許我生成一個值的列表,稍後在程序中進行格式化。它返回一個通用的列表,它導致谷歌的API(QPX Express),但我不認爲這對問題很重要。返回列表的類似方法調用

List<TripOption> tripOption = dataFromGoogle() //returns List 

我正在閱讀文檔,似乎我可以使用這個相同的API來處理不同列表中的其他值。所以基本上我想使用相同的API調用,但我只能返回一種類型的列表。

dataFromGoogle(tripOption, cityData); //gives me null pointer exception 

所以我的問題是,要麼這將是重用我的方法來獲取API的不同方面,或ELI5是什麼原因導致nullpointers因爲我總是讓他們和我不知道我完全理解的好方法爲什麼。

回答

0

當你有這樣的空指針異常被拋出:

Object temp = null; 
temp.callMethod(); 

正如其名稱所暗示的,NullPointerException異常發生時,你有一個變量,「點」爲空值,並儘量在訪問什麼就好像它是一個物體一樣。

發生了什麼與您的可能有關dataFromGoogle返回null,然後dataFromGoogle試圖將其視爲一個對象。

+0

是的,我認爲我現在明白了。現在我的問題在於重新分解。基本上它適用於變量是全局變量但不通過方法傳遞時... – gemini88mill

+0

您是否在討論使用dataFromGoogle'方法獲取和更新?如果是這樣,請閱讀https://docs.oracle.com/javase/tutorial/java/javaOO/methods.html。特別是「重載方法」部分。 –

+0

不...基本上我有不同的列表類型與QPX,但他們都可以使用相同的方法填充。所以我應該能夠使用相同的方法,而不是使方法返回略有不同的列表的多個副本 – gemini88mill