我想转换长字符串,然后根据字符串索引找到字符串中的某个数字。长转换为字符串错误,与使用子字符串
我得到这个错误:
Exception in thread "main" java.lang.StringIndexOutOfBoundsException:
String index out of range: 0
at java.lang.String.charAt(Unknown Source)
at TestFile.main(TestFile.java:12)
为什么这个不行?我以为我明白substring
,但我想我不知道。
此外,如果我将其更改为substring((i-2), (i-1))
我得到一个数字是非常不同的长。但我不再有错误了。
import java.util.*;
public class TestFile {
public static void main(String args[]) {
long hello = 22L;
// System.out.println(HW3.sumOfDoubleEvenPlace(hello));
String strLong = Long.toString(hello);
int i = strLong.length();
System.out.println(i);
int temp;
String strLongcut = strLong.substring((i-2), (i-2));
temp = Integer.valueOf(strLongcut.charAt(0));
System.out.println(temp);
}
}
所以我刚刚意识到的substring
第二部分是我想利用,而不是指数部分的长度。
我仍然不能得到我的长期正确返回的价值。
感谢您的帮助!
子串的长度是secondArgument - firstArgument – Aderis