找不到符号 - 方法计数(java.lang.string)

Cannot find symbol - method count(java.lang.string)

我试图在不使用 split() 的情况下制作一个字数统计程序。 好的,在你们告诉我说这是重复之前。我知道。 另一个解决方案对我来说不是很具体,因为他们使用的是 add 方法。

public static void findWord()
{
    Scanner input = new Scanner(System.in);

    System.out.println("Enter a sentence");
    String sentence = input.nextLine();
    int numOfWords = count(sentence);

此处出现计数错误。

    System.out.println("input: " + sentence);
    System.out.println("number of words: " + numOfWords);
}

你需要一个count方法。这是一个简单的例子:

public int count(String sentence) {
    return sentense.split(" ").length;
}

sentense.split(" ") 将拆分 sentence 其中有空白 space,并且 return 一个 Strings 的数组("hello world" 变为 {"hello", "world"}).

.length 将 return 数组中的项目数,在本例中为单词数。

正如 Stefan 提到的,您缺少 count 方法(因为这就是您在说 count(sentence); 时尝试调用的方法)

这里的答案略有不同,因为您要求不要使用 split()

public static int count(String s) {
        int count = 1; //to include the first word
        for (int i = 0; i < s.length(); i++) {
            if (s.charAt(i) == ' ') {
                count++;
            }
        }
        return count;
    }

如果空间有问题,更好的方法是:

StringTokenizer st = new StringTokenizer(sentence);
System.out.println(st.countTokens());