1. 程式人生 > 程式設計 >詳解java.lang.NumberFormatException錯誤及解決辦法

詳解java.lang.NumberFormatException錯誤及解決辦法

前言:

在做後臺時用的jsp開發,在頁面向controller傳參時用String接收的引數,但是資料庫實體中jies接收該引數時是int型別,做了一下強制轉換,但是沒有判斷去空格,結果頁面載入時就報500錯誤了。

錯誤截圖:

詳解java.lang.NumberFormatException錯誤及解決辦法

在報錯後注意分析報錯資訊,如上圖提示在ShopController.java 的92行出錯了,那麼錯誤就很容易定位了,去看那裡的程式碼。

詳解java.lang.NumberFormatException錯誤及解決辦法

錯誤關鍵字java.lang.NumberFormatException這句話明確告訴了我們是數字格式異常,接著後面有 null 提示,這就告訴我們你當前想把 null轉換成數字型別時出錯了,這樣就很確切了。在傳參的時候應該是Integer型別,而我在後臺用String型別接收,最後又將String型別給強制轉換成Integer型別,在沒有值得情況下自然是轉不了了,所以就有null值了。

具體是哪個類的哪個方法的哪一行的錯誤了,看下面錯誤堆疊,找自己寫的第一個類

com.dxz.controller.ShopController.index(ShopController.java:92)

原來是 com.dxz.controller.ShopController類的index方法裡的第92行出錯了。

這樣就定位到了Integer pid=Integer.parseInt(provinceId);具體是 Integer.parseInt(provinceId)時出的錯,知道了錯誤地方就可以相應的解決了

解決這個很簡單 ,把引數用Integer型別來接收,避免了轉換的問題,問題也就隨之解決了。

到此這篇關於詳解java.lang.NumberFormatException錯誤及解決辦法的文章就介紹到這了,更多相關java.lang.NumberFormatException錯誤內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!