0
嗨,我是新的和困惑,當談到編程,我正在計算一個程序,計算單詞中的單詞字符串,但它從來沒有計算字符串中的第一個單詞,即使當這是唯一的一個。我知道這不是一個問題,因爲我已經測試過了。任何幫助都感激不盡!這裏是我的代碼WordCount程序不計算第一個字
public class WordCount {
public static boolean isWord (String w, int min) {
int letters=0;
for (int i=0; i<w.length(); i++) {
char c=w.charAt(i);
boolean l=Character.isLetter(c);
if (l=true) {
letters++;
}
else {
c=' ';
}
}
if (letters>min) {
return true;
}
else {
w=" ";
}
return false;
}
public static int countWords (String a, int minLength) {
int count=0;
for (int i=0; i<a.length(); i++) {
if (a.charAt(i)==' ') {
String b=a.substring(0, a.indexOf(' ')-1);
if (isWord(b, minLength)==true) {
count++;
}
}
}
return count;
}
public static void main (String[] args) {
System.out.print("Enter a sentence: ");
String sentence=IO.readString();
System.out.print("Enter the minimum word length: ");
int min=IO.readInt();
if (min<0) {
System.out.println("Bad input");
return;
}
if (sentence.length()<min) {
System.out.println("Bad input");
return;
}
System.out.println("The word count is "+ countWords(sentence,min));
}
}
你不能使用'string.split(「」).length'嗎? –
仔細看看if(l = true)'。 Java對* assignment *和* comparison *使用不同的運算符。 – Pshemo