java - 陣列溢位問題,在自己電腦上面不報錯,在別人電腦上面報錯
怪我咯
怪我咯 2017-04-18 10:53:20
0
4
511

我將每條數據進行分割,之後在我的電腦上麵運行沒有問題,但是把代碼遷移到別人的電腦上麵就報了數組溢出的 問題。我要進行分割的是這樣的數據:nf-000001。以中間的"-"作為分割的界限,把數據分成"nf"和"000001"。
代碼

for(int i=1;i<rsRows;i++){
                String originNum=null;
                Cell cell=readsheet.getCell(column,i);
                originNum=cell.getContents();//获得数据“nf-000001”
                String[] numGoods=originNum.split("-");//数据进行分割
                list.add(numGoods[1]);//讲分割的后半部分添加在一个Array<String> list中
            }

錯誤提示:圖片中160行就是報的list.add(numGoods[1])這個語句的錯誤,我看他說是數組溢出,然而在我的電腦上麵沒有出現這個問題,很奇怪,求大神相助!!

怪我咯
怪我咯

走同样的路,发现不同的人生

全部回覆(4)
小葫芦

打個斷點,調試下不就知道,數組越界,列印下rsRows里面是否有没有-的情况,你在numGoods[1]前,為了程式碼健全性起碼得檢查下數組的長度吧。

巴扎黑

給的相關資訊太少了...

巴扎黑

分割後判斷一下numGoods陣列長度,可能是numGoods素組長度小於2。

小葫芦

我猜這台電腦上輸入的不是「-」連接的字串。
這個-符號要看清楚,有稍短一點兒的也有稍長一點的,要確定輸入對了

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板