我该如何解决此OutOfBoundsException

这是我正在使用的代码:

 ResultSet rsTagCheck = stmt.executeQuery(
     "SELECT PARKING.XKRPRMT.XKRPRMT_PIDM, PARKING.XKRPRMT.XKRPRMT_STATUS, PARKING.XKRPRMT.XKRPRMT_EXPIRE_YR, PARKING.XKRPRMT.XKRPRMT_TAG FROM PARKING.XKRPRMT WHERE XKRPRMT_PIDM ='" + BannerID + "'");
 while (rsTagCheck.next()){
     String TagNum = rsTagCheck.getString("XKRPRMT_TAG");
     ArrayList<String> myTag = new ArrayList<String>();

     for (int i = 0; i < TagNum.length(); i++){
         myTag.add(TagNum);
         myTag.get(i + i);


我有点知道为什么会出错,但是我不确定如何解决该问题。

最佳答案

您期望myTag.get(i + i)做什么?

第一次循环,“ i”为零,您添加了一个元素。不会有元素1,因此调用将引发异常。既然我已经真正看到您的内容,它就会在第二次迭代中失败,而不是第一次迭代,就像可怜的@Giu在他现在删除的答案中指出的那样。但是,这很奇怪,我不知道您通过调用.get()甚至不查看返回值来试图完成什么。

您确实必须解释您要做什么,因为按照书面说明,这实际上没有任何意义。问题标题中的异常是否真的源于该代码,还是您在发布时将其一部分进行了编辑?

编辑-哎呀,他们完全将“ i + i”视为“ i + 1”。但是对我来说仍然没有意义。

10-08 13:25