我试图编写一种方法,该方法从“ words”参数返回的单词数至少为“ min”但不超过“ max c”个字符。
public static int countWords(String words, int min, int max)
{
Scanner s = new Scanner (words);
int counter = 0;
while (s.hasNext())
{
String word = s.next();
int wordLength = word.length();
if (wordLength>min && wordLength<max)
{
counter= counter + 1;
s.close();
}
}
return counter;
}
最佳答案
根据我对您的了解,您希望计算指定了max和min的单词
例如,"The rain in Spain falls mainly in the plain", 3, 5
是返回值5
,因为它们是3个5和2个3
您的代码很正常,除了这部分需要对其逻辑进行一些更改
if (wordLength>min && wordLength<max)
根据我从您的问题中了解到的信息,您想要单词的长度最小或最大
结果,您必须对此if语句进行更改
if (wordLength == min || wordLength == max) {
说明:单词的长度等于最小长度或最大长度,将添加计数器