作者:
aa1727 (幫我加油好嗎)
2019-07-17 12:19:12完整code : https://pastebin.com/513nvkim
如題
我要寫一個抓旅遊資訊的app
資料用政府的opendata
如果我把 if判斷式拿掉,可以成功跑出所有資料
https://i.imgur.com/aKMmJsQ.jpg
但我想依照縣市來分,所以抓地址前兩個字來比對
我先隨便打一個縣市來測試
但if加上去就整個跑不出來還閃退
如果要按縣市分有更好或是可行的辦法嗎?
作者:
LPH66 (-6.2598534e+18f)
2019-07-17 12:27:00閃退有抓到是哪裡出了例外嗎?
作者:
aa1727 (幫我加油好嗎)
2019-07-17 12:41:00我找不出原因 想不透為什麼多一個判斷就爆了 我迴圈改五次都會閃退
你比對的方式有問題吧...改用String的indexOf如何
作者:
aa1727 (幫我加油好嗎)
2019-07-17 13:36:00我等等試看看 感謝回覆!
仔細看了一下,你先確定你每次抓的字串a,既不是空值,
長度也大於2吧,應該是indexoutofbound的例外或是NullPointerException
作者:
zcbxvsdf (東北一頭羊)
2019-07-17 19:15:00先學會logcat吧,版上通靈人士已經不多了
作者:
y3k (激流を制するは静水)
2019-07-18 00:54:00String a="臺";a.charAt(1);就會爆炸 在比對任何外來的資訊前都要先確保它的長度或內容是符合你預期的另外看你的code 為什麼不直接比對=="台東"?XD
按縣市分或許可以考慮用zipCode應該不能用=="台東"因為是一串地址XD 要這樣比對的話或許可以用startswith()
作者:
aa1727 (幫我加油好嗎)
2019-07-18 11:47:00感謝,靠各位回覆 已經解決了 小弟比較菜多多見諒
作者:
y3k (激流を制するは静水)
2019-07-19 00:56:00對耶 沒想到orz
作者: rogerlarger (宅) 2019-08-07 01:18:00
建議用"台東".equals (a)避免npe地址包含台東的話用a.contains("台東"),但要先檢查a不為null各縣市的話,妳先抓前兩個字可以用b=a.subString(0,2);然後switch case