我正在製作一個計算一個句子中的單詞的程序。空格不計算,標點符號不計算。我正在使用一個模塊,它將接受輸入並輸出答案。不過不要擔心,因爲我不認爲這就是爲什麼我的程序打印出這個繼續索引超出範圍
Exception in thread "main" java.lang.StringIndexOutOfBoundsException:
String index out of range: 11
at java.lang.String.charAt(String.java:658)
at WordCount.main(WordCount.java:20)
public class WordCount{
public static void main(String[] args){
System.out.println("Please enter sentence");
String sentence= IO.readString();
System.out.println("Please enter minimum word length");
double minword= IO.readInt();
String word;
int wordletter=0;
int wordcount= 0;
int count= -1;
int end= sentence.length();
do{
count++;
char space= sentence.charAt(count);
if(Character.isLetter(space)){
boolean cut= Character.isSpaceChar(space);
if(cut== true)
word=sentence.substring(0,count);
count= 0;
wordletter= word.length();
end= end- wordletter;
if(wordletter< minword){
;
}else{
wordcount= wordcount+1;
}
}else{
;
}
}else{
;
}
}while(count!= end);
IO.outputIntAnswer(wordcount);
}
}
我試過這個,我得到了同樣的錯誤? – mercedesbrenz 2013-03-04 02:59:25
你確定你把它正確地複製了嗎? (刪除了身體的任何數量++)。它應該從0運行到sentence.length() - 1. – 2013-03-04 03:11:46
是的,我做到了。在我使用do while循環之前,我使用了for循環並得到了相同的錯誤。 – mercedesbrenz 2013-03-04 03:26:52