-1
據我所知,所有變量都由我用調試器檢查過,它們都不爲空。該應用程序拋出NullPointerException,但找不到原因
我 「getCurrentGameId」 從GameService.java方法:
public long getCurrentGameId() {
if(mGame != null && mGame.mModel != null) {
return mGame.mModel.getId();
}
return 0;
}
錯誤:
Process: com.soccertimer.android.debug, PID: 28143
java.lang.NullPointerException
at com.soccertimer.android.services.GameService.getCurrentGameId(GameService.java:107)
at com.soccertimer.android.ui.GameListFragment.onListItemClick(GameListFragment.java:82)
at com.soccertimer.android.ui.GameListFragment$$ViewInjector$1.onItemClick(GameListFragment$$ViewInjector.java:20)
at android.widget.AdapterView.performItemClick(AdapterView.java:298)
at android.widget.AbsListView.performItemClick(AbsListView.java:1113)
at android.widget.AbsListView$PerformClick.run(AbsListView.java:2911)
at android.widget.AbsListView$3.run(AbsListView.java:3645)
at android.os.Handler.handleCallback(Handler.java:733)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5146)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:796)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:612)
at dalvik.system.NativeStart.main(Native Method)
'getId'返回'Long'還是'long'? – njzk2
很長,這就是問題所在! – Idob
作爲一個對象的'長',可以將一個不能被autounboxed的值設置爲'long',即'null'。只有你可以決定你想要在這種情況下有什麼行爲。 – njzk2