我是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);
}
}
答案 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()
也是如此。