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

时间:2017-10-24 15:19:14

标签: java string methods count lang

我试图制作一个单词计数程序,而不必使用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);
}

2 个答案:

答案 0 :(得分:0)

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

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

sentense.split(" ")会将sentence拆分为空格,并返回Strings"hello world"成为{"hello", "world"})的数组。

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

答案 1 :(得分:0)

正如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());