这是我的一小段代码,它试图将长度为 6 的字符串转换为 int 数组。
int[] intArray=new int[6];
int i = 0;
String s = jTextField2.getText();
int strLength = s.length();
if(strLength != 6) {
jTextArea1.setText("Not a valid length");
} else {
for(i=0;i<6;i++) {
intArray[i] = Integer.parseInt(String.valueOf(s.charAt(i)));
}
}
这会出现越界异常,我不明白为什么。
感谢您的帮助。
最佳答案
这个
public static void main(String[] args) {
int[] intArray=new int[6];
int i = 0;
String s = "123456";
int strLength = s.length();
if(strLength != 6) {
System.out.println("Not a valid length");
} else {
for(i=0;i<6;i++) {
if (!Character.isDigit(s.charAt(i))) {
System.out.println("Contains an invalid digit");
break;
}
intArray[i] = Integer.parseInt(String.valueOf(s.charAt(i)));
}
}
System.out.println(Arrays.toString(intArray));
}
打印
[1, 2, 3, 4, 5, 6]
这里。
关于java - 将 String 转换为 int 数组,java.lang.ArrayIndexOutOfBoundsException : 6,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20509966/