【发布时间】:2011-10-30 23:03:55
【问题描述】:
代码复制如下。如果字符变量 l 等于空格,它应该返回空格的数量,但总是返回 0。
我已经用字母对其进行了测试并且它有效,例如,如果我要求它在变量 l 等于 e 时增加并输入一个带有 e 的句子,它会计算它。但由于某种原因,不是空格。
import java.util.Scanner;
public class countspace {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("Enter a sentence:");
String str = input.next();
System.out.println(wc(str));
}
public static int wc(String sentence) {
int c = 0;
for (int i = 0; i < sentence.length(); i++) {
char l = sentence.charAt(i);
if (l == ' ') {
c++;
}
}
return c;
}
}
【问题讨论】:
-
顺便说一句,您可以使用 sentence.toCharArray() 将字符串转换为 char[] 而不是像您所做的那样获取单个字符。