请教一个java数组的问题

恩赐解脱r 发布于 2018/10/12 16:57
阅读 152
收藏 0

我新建了一个数组,获取数据后想放到数据库里面。但是循环输出时这个i一超过237就报错

加载中
0
liuleidefeng
liuleidefeng

从你的错误截图上来看,是数据转换错误,‘For input string: "1.3"’,1.3无法转换成int的

tcxu
tcxu
没错,就是因为 读到的 x 的值 是 1.3, 无法转换成 Integer。
恩赐解脱r
那这个为什么就是237的时候报错呢,每次都是固定这里的
0
tcxu
tcxu

应当将for循环控制变量 i 的上限为 size  (400太大了): 

.....

for(int i=0;i<size;i++){

......

恩赐解脱r
其实size大小是521啊..但是超过237就一直报错。我前面一开测试的时候只有十个没问题。200白也没问题,就是到237就报错
0
星汉
星汉

请问报的是下标越界吗?如果是的话,就应该把你的i的值规定在size的范围之内。

0
恩赐解脱r

这个是报错内容

0
tcxu
tcxu

错误发生在 当 i=238 时,从 reList2 读到的值是 : 1.3 [见:  String x = reList2.get(i).get("read_value");]。导致执行 int flow=Integer.valueOf(x) 时,抛出异常:

Exception in thread "main" java.lang.NumberFormatException: For input string: "1.3"
        at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
        at java.lang.Integer.parseInt(Integer.java:580)
        at java.lang.Integer.valueOf(Integer.java:766)
        at .....(你的代码出错的地方 )

 

恩赐解脱r
现在知道了,多谢
0
恩赐解脱r

转换错误是对的,我删除了就能正常运行了。但是很奇怪每次进行到237行才报错

返回顶部
顶部