我正在創建一個 Android Studios 任務列表應用程序。由于某種原因,即使表達式為假,也會調用 IF 語句,從而在運行時產生錯誤。代碼如下:if (taskArray5.get(0).equals( "Goal Time Not Specified") ) { Log.d("hello", taskArray5.get(0).getClass().toString()); Log.d("hello", taskArray5.get(0)); String[] localTimeList = localTime.split(":"); String previouslySetTime = taskArray5.get(0).substring(0, taskArray5.get(0).length() - 5); String[] previouslySetTimeList = previouslySetTime.split(":"); Integer localTimeHours = Integer.parseInt(localTimeList[0]); Integer localTimeMinutes = Integer.parseInt(localTimeList[1]); Integer localTimeSeconds = Integer.parseInt(localTimeList[2]); char AMORPM = taskArray5.get(0).charAt(taskArray5.get(0).length() - 4); Integer previouslySetTimeHours; if (AMORPM == 'A') { previouslySetTimeHours = Integer.parseInt(previouslySetTimeList[0]); } else { previouslySetTimeHours = Integer.parseInt(previouslySetTimeList[0]) + 12; }我使用 Log.d 確認 taskArray5.get(0) 是一個具有特定值“目標時間未指定”的字符串。另外,使用equals()函數也沒有解決問題。我究竟做錯了什么?任何幫助表示贊賞。
1 回答

溫溫醬
TA貢獻1752條經驗 獲得超4個贊
在這種情況下要做的事情:
使用斷點,有時簡單地記錄是不夠的,你可能會錯過一些東西,即,當你認為它被調用或可能被多次調用時,if 沒有被調用
您寫道:taskArray.get(0) 是一個具有特定值“目標時間未指定”的字符串,但是您在代碼中使用了taskArray5。另外,如果它具有條件所需的特定值,那么輸入不是正常的嗎?
添加回答
舉報
0/150
提交
取消