引用一下,并显示每个单词的字符数,单词数和平均数

时间:2017-12-05 00:07:02

标签: java char

我是Java的新手,请不要告诉我使用方法等因为我不知道怎么做。但我确实知道一些特殊的东西,所以任何人都可以帮助我找到大量的单词,并且每个单词的平均值,我做了第一部分。这是我的代码。

import java.util.Scanner;
public class FavouriteQuote {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        String sQuote;
        int counter = 0;

        Scanner input = new Scanner (System.in);
        System.out.print("Enter one of your favourite quotes: ");
        sQuote = input.nextLine();
        input.close();

        for (int i = 0; i < sQuote.length(); i ++) {
            counter ++;
        }
        System.out.println(counter);
    }

}

1 个答案:

答案 0 :(得分:0)

但你需要什么平均值?引用的平均字长?  那么您的代码可能如下所示:

    ...
    input.close();

    System.out.println("Characters in quote:" + sQuote.length());

    String[] words = sQuote.split("\\s");
    // or 
    // String[] words = sQuote.split(" ");

    System.out.println("words in quote:" + words.length);

    int totalWordsLength =0;
    for (String word: words) 
    {
        totalWordsLength = totalWordsLength + word.length();
    }
//or with loop counter
//      for (int i=0; i < words.length; i++) 
//      {
//          totalWordsLength += words[i].length();
//      }       

    System.out.println("average word length in quote:" + (totalWordsLength/ words.length));

请记住:此处的平均值为int,因此它只是除法结果的整数部分。即11/3 = 3 BTW(除了问题) - 您不需要for循环。它没有任何意义。 counter = sQuote.length()也是如此。