我正在尝试制作一个我已经部分制作的字数统计程序,它给出了正确的结果,但是当我在字符串中输入空格或多个空格时,字数统计的结果显示错误的结果,因为我我根据使用的空格计算单词数。如果有一种解决方案,无论有多少空间我仍然能得到正确的结果,我都需要帮助。我在下面提到代码。
public class CountWords
{
public static void main (String[] args)
{
System.out.println("Simple Java Word Count Program");
String str1 = "Today is Holdiay Day";
int wordCount = 1;
for (int i = 0; i < str1.length(); i++)
{
if (str1.charAt(i) == ' ')
{
wordCount++;
}
}
System.out.println("Word count is = " + wordCount);
}
}
最佳答案
public static void main (String[] args) {
System.out.println("Simple Java Word Count Program");
String str1 = "Today is Holdiay Day";
String[] wordArray = str1.trim().split("\\s+");
int wordCount = wordArray.length;
System.out.println("Word count is = " + wordCount);
}
想法是将字符串拆分为出现任意次数的任意空白字符上的单词。 String 类的 split 函数返回一个包含单词作为其元素的数组。 打印数组的长度将得出字符串中的单词数。
关于Java字数统计程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8102754/