我的老师希望我们采用一个被估算的字符串,并采取一定的增量,并在这些增量中拉出字符。我有工作,但我仍然收到此错误信息:它的工作原理,但我仍然收到错误信息,我做错了什么?
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