我的老師希望我們採用一個被估算的字符串,並採取一定的增量,並在這些增量中拉出字符。我有工作,但我仍然收到此錯誤信息:它的工作原理,但我仍然收到錯誤信息,我做錯了什麼?
java.lang.StringIndexOutOfBoundsException: String index out of range: 21
然後它突出的代碼point = base.charAt(sum)
行: 這裏是我的全部代碼,以便您可以看到我在做什麼。
import java.util.*;
public class EveryOtherCharacter {
public static void main(String[]args) {
Scanner input = new Scanner(System.in);
System.out.print("Enter a String: ");
String base = input.nextLine();
System.out.print("Enter an increment: ");
int index = input.nextInt();
int a = base.length();
int sum = 0;
char point;
if(index>a) {
System.out.println("Invalid increment: "+index);
}
else {
while (index<=a) {
sum+=index;
point = base.charAt(sum);
System.out.print(point);
}
System.out.println();
}
}
}
Java是0索引(字符串的第一個字符在'0'位置,最後一個在'length - 1'),所以'while(index <= a){'應該可以是'while(index MadProgrammer
看起來好像你正在得到數組中的字符。長度 – Jorgovanka