>  Q&A  >  본문

java - 数组溢出问题,在自己电脑上面不报错,在别人电脑上面报错

我将每条数据进行分割,之后在我的电脑上面运行没有问题,但是把代码迁移到别人的电脑上面就报了数组溢出的 问题。我要进行分割的是这样的数据: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])这个语句的错误,我看他说是数组溢出,然而在我的电脑上面没有出现这个问题,很奇怪,求大神相助!!

怪我咯怪我咯2743일 전483

모든 응답(4)나는 대답할 것이다

  • 高洛峰

    高洛峰2017-04-18 10:55:20

    중단점을 설정합니다. 디버깅 중에 rsRows-이 있는지 인쇄합니다. numGoods[1] 전에 최소한 배열의 길이를 확인해야 합니다. 코드 견고성을 위해.

    회신하다
    0
  • 巴扎黑

    巴扎黑2017-04-18 10:55:20

    관련 정보가 너무 부족합니다...

    회신하다
    0
  • 巴扎黑

    巴扎黑2017-04-18 10:55:20

    분할 후 numGoods 배열의 길이를 판단하면 numGoods 요소 그룹의 길이가 2보다 작을 수 있습니다.

    회신하다
    0
  • 高洛峰

    高洛峰2017-04-18 10:55:20

    이 컴퓨터에 입력된 문자열은 "-"로 연결된 문자열이 아닌 것 같습니다.
    - 기호는 짧은 것도 있고 긴 것도 있으니 잘 확인하셔야 합니다

    회신하다
    0
  • 취소회신하다