請幫幫忙,我在下面的代碼這是爲什麼這個循環拋出IndexOutOfBoundsException?
public static void main (String[] args){
String st = "harpreet";
for(int i=1; i<=st.length(); i++){
System.out.print(st.charAt(i));
}
}
請幫幫忙,我在下面的代碼這是爲什麼這個循環拋出IndexOutOfBoundsException?
public static void main (String[] args){
String st = "harpreet";
for(int i=1; i<=st.length(); i++){
System.out.print(st.charAt(i));
}
}
數組偏移越來越指數走出界外的從0開始,而不是1。如果你從1開始,你遺漏偏移0。此外,還要比較< ST。長度(),否則你走出界限
for(int i=0; i< st.length(); i++){
數組索引從0開始,但你計算字符串的長度從1開始,如「harpreet」長度爲8,但「h」的字母索引爲0
IndexOutOfBoundException是一個運行時異常和它發生時你正試圖到達不存在的數組。
你的代碼應該是 -
for(int i=0; i< st.length(); i++)
提示:數組索引從零,而不是一個開始。 – NPE 2014-09-18 19:24:52
java.lang.StringIndexOutOfBoundsException:字符串索引超出範圍:8 \t at java.lang.String.charAt(Unknown Source) – 2014-09-18 19:25:40
'i
2014-09-18 19:26:27