【发布时间】:2017-08-03 17:17:03
【问题描述】:
int index=0;
ArrayList<Integer> list = new ArrayList<>(14);
for (index = text.indexOf("$");
index >= 0;
index = text.indexOf("$", index + 1))
{
list.add(index);
}
System.out.print(list.size());
System.out.println(text.substring(list.get(12)+1,list.get(12)+8));
System.out.println(text.substring(list.get(13)+1, list.get(13)+8));
System.out.println(text.substring(list.get(14)+1,list.get(14)+9));
System.out.println(text.substring(list.get(14)-10, list.get(14)+9));
String a7 = text.substring(list.get(7)+1,list.get(7)+8);
String a8 = text.substring(list.get(8)+1,list.get(8)+8);
String a9 = text.substring(list.get(9)+1,list.get(9)+8);
String a10 = text.substring(list.get(10)+1,list.get(10)+8);
String a11 = text.substring(list.get(11)+1,list.get(11)+7);
String a12 = text.substring(list.get(12)+1,list.get(12)+8);
String a13 = text.substring(list.get(13)+1, list.get(13)+8);
String a14 = text.substring(list.get(14)+1,list.get(14)+9);
String a15 = text.substring(list.get(14)-10, list.get(14)+9);
错误:
线程“主”java.lang.IndexOutOfBoundsException 中的异常:索引: 12、大小:12 在 java.util.ArrayList.rangeCheck(ArrayList.java:653)
在 java.util.ArrayList.get(ArrayList.java:429) 在 pkgfinal.Final.main(Final.java:240)
我确保索引 12 有一个值,但我仍然收到此错误。 “文本”是扫描文档
编辑: 您选择打开此文件:Scan.pdf /C:/Users/sahaj/Documents/NetBeansProjects/Final/build/classes/
- 99
981.83
- 13
3279 美元。 13
线程“主”java.lang.IndexOutOfBoundsException 中的异常:索引:12,大小: 12
at java.util.ArrayList.rangeCheck(ArrayList.java:653)
at java.util.ArrayList.get(ArrayList.java:429)
at pkgfinal.Final.main(Final.java:245)
453
【问题讨论】:
-
“文本”的内容是什么?
-
你如何确保“那个索引 12 有一个值”?
-
文本是已扫描的收据。它被告知要获取美元符号的所有实例。我已经通过将它打印到控制台来检查它是否有价值。它给出了一个值,但也给出了一个错误
-
不清楚目标是什么。目标是找出美元后面的所有美元金额吗?
-
@Lii 抱歉我今天才注册。
标签: java arraylist indexoutofboundsexception