当前位置: 首页 > 知识库问答 >
问题:

Java中最小长度单词的计数

储阳曦
2023-03-14

在WordCount.java文件中编写代码。您的代码应该进入具有以下签名的方法。您可以编写自己的主要方法来测试代码。评分员会忽略你的主要方法:

public static int countWords(String original, int minLength){}

你的方法应该计算句子中满足或超过minLength的单词数(以字母为单位)。例如,如果给定的最小长度是4,那么您的程序应该只计算至少有4个字母长的单词。

单词之间会用一个或多个空格隔开。非字母字符(空格、标点符号、数字等)可能存在,但不应计入单词长度。

提示:编写一个方法,计算包含单个单词但不包含空格的字符串中的字母数(并忽略标点符号)。在您的countWords方法中,将输入字符串分解成单词,并将每个单词发送到您的方法。

我正试图获得代码中单词的最小长度,而不包括标点符号等。我该怎么做?此外,我将删除主方法,因为它将自动添加。我如何使程序自动在最后一个单词后面添加一个空格?

public class WordCounts
{
public static void main(String[] args)
{
    Scanner in = new Scanner(System.in);
    System.out.print("Enter a sentence: ");              
    String sentence = in.nextLine();

    System.out.println("minLength");
    int minLength=in.nextInt();

    System.out.print("Your sentence has " + countWords(sentence,minLength)+ " words.");
}

public static int countWords(String str, int minLength)
{
int count = 0;
int c=0;

for (int i=0;i<=str.length()-1;i++)
{
    if (str.charAt(i) != ' ')
    {
        if(str.charAt(i)>='a' && str.charAt(i)<='z') //to check only      for alphabets.
        c++;

    }
    if(c>=minLength)
    {
         count++;
         c=0;
    }
    }
return count;

}
}

共有1个答案

邬博涉
2023-03-14

您必须将minLength作为参数传递给countWords函数。这样,您就可以在countWords函数中访问这个变量。您还希望逐字符地循环该字符串,并跟踪您看到了多少个字母,称之为“Numletters”。检查字符串“aabbcc....yyzz”中是否存在该字符,以确保它是一个字母,如果存在,则在“numletters”中添加1。如果到达输入的末尾或到达一个空格,则检查numLetters是否大于minLength;如果是,则加1以计数。将numLetters重置为0,并继续执行,直到到达字符串的末尾。

例如:获取字符:

for (int i = 0; i < str.length(); i++){
    char c = str.charAt(i);
}
 类似资料:
  • 问题内容: 获取最长单词长度的更Python方式是什么: 要么: 或者是其他东西? 是字符串列表。我发现我经常需要这样做,并且在用几个不同的样本量进行计时之后,第一种方法似乎始终如一地更快,尽管在票面价值上似乎效率不高(被叫两次的冗余似乎无关紧要,在第二种方法中发生的更多)这种形式的C代码?)。 问题答案: 我认为两者都可以,但是我认为除非速度是最易读的大考虑。 当我看着它们时,我花了更长的时间才

  • 有时候希望指定两个节点之间的最小长度,可以使用minlen这个属性实现,如果必要的话,还可以使用invisible属性让这个节点隐藏。 [ Aachen ] --> [ Bonn ] --> [ Coburg ] [ Aue ] --> { minlen: 3; } [ Cuxhaven ] +--------+ +------+ +----------+ | Aachen |

  • 本文向大家介绍找到字符串中最长的单词,并返回它的长度相关面试题,主要包含被问及找到字符串中最长的单词,并返回它的长度时的应答技巧和注意事项,需要的朋友参考一下 function findLongestWord(str){ // let arr=str.split(" "); let arr=str.replace(/[,|.|;]/," ").split(" "); let longLength=

  • 问题内容: java中List的最大长度是多少?我的意思是列表中可以存储多少个最大元素? 问题答案: 或堆将是最低的

  • 所以我做了一个函数 因此,它所做的是获取一个字符串,将其拆分,并生成一个字典,其中键是单词,值是它出现的次数。 好的,我现在要做的是,做一个函数,它接受这个函数的输出,并产生一个如下格式的列表- ((超过1个字母的单词列表),(最常用单词列表),(最长单词列表)) 另外,例如,假设两个单词出现了3次,并且两个单词都有6个字母长,那么这两个单词都应该包含在(最频繁的)和(最长的)列表中。 因此,到目

  • 如果我正确地看到了这一点,那么trie中的所有叶节点都将拼写出整个单词,所有父节点都包含最终叶节点之前的字符。因此,如果我有一个名为DigitalTreeNode的类,其定义为 如果我想实现一个返回trie中最长单词的方法,是否只需要在每个叶节点查找最长单词?如何实现方法,例如: 我猜它涉及到设置一个最长的字符串变量,递归地遍历每个节点,并检查它是否是一个单词,如果它是一个单词,并且它的长度大于最