我试图创建代码以消除用户输入字符串中的空格删除空格,但是我收到一个错误在第16行从用户输入字符串
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 15 at practice5.main(practice5.java:16)
注:我们不允许使用Java的替换方法。我需要手动编码。
这里是我的代码:
import java.util.Scanner;
public class practice5{
public static void main(String args[]){
Scanner scanner = new Scanner(System.in);
String line;
System.out.print("Sentence: ");
line = scanner.nextLine();
char phrase[] = line.toCharArray();
int i = 0;
int n = 0;
while(phrase[i] != '\0') {
if(phrase[i] == ' ') {
for(n=i; n<phrase.length; n++) {
phrase[n] = phrase[n+1];
}
}
i++;
}
String output = new String(phrase);
System.out.print(output);
}
}
谢谢!
你必须停止你的循环,如果你到达字符串的结尾 – Jens