Java 程序用于计算给定字符串中的单词数

javaobject oriented programmingprogramming更新于 2024/8/6 18:55:00

字符串是 Java 中的一个类,用于存储一系列用双引号括起来的字符。这些字符充当字符串类型的对象。本文的目的是编写 Java 程序来计算给定字符串中的单词数。可以使用字符串操作技术来解决给定字符串的单词数计算问题。在 Java 面试中,字符串操作问题非常常见,因此,正确理解这个问题非常重要。

Java 程序用于计算给定字符串中的单词数

在跳到示例程序之前,让我们借助示例来理解问题陈述。

输入

String = "You are on Tutorials Point website";

输出

给定字符串中的单词数:6

我们可以观察到字符串中的单词由空格(' ')分隔,为了将此信息指示给 Java 编译器,我们将检查当前索引处的字符是空格还是字母。如果是空格,而下一个字符是字母,我们将增加计数器变量以表明我们遇到了一个单词。

现在,让我们讨论几个用于计算给定字符串中单词数量的 Java 程序。

示例 1

以下示例说明如何使用 while 循环打印给定字符串中的单词数量。

方法

  • 首先,初始化要计算单词数量的字符串。

  • 然后,声明一个计数器变量来存储单词数量。

  • 接下来,使用 while 循环遍历字符串的每个字符。在此循环内,定义一个 if 块以使用"charAt()"方法检查空格。如果遇到空格,我们将增加计数器。

  • 最后,打印结果并退出。

public class Example1 { 
   public static void main(String args[]) { 
    // 初始化字符串
    String msg = "Tutorials Point Welcomes You!!";
    System.out.println("给定的字符串是:" + msg);
    // 初始单词数
    int total = 1;
    // 循环变量
    int i = 0;
    // while 循环计算单词数
    while (i < msg.length()) {
        // 检查当前字符是否为空格
        if ((msg.charAt(i) == ' ') && (msg.charAt(i + 1) != ' ')) {
        	total++; // 增加单词数
        }
        i++; // 增加循环变量
    }
    // 打印结果
    System.out.println("给定字符串中的单词数:" + total);
   } 
}

输出

给定的字符串是:Tutorials Point Welcomes You!!
给定字符串中的单词数:4

示例 2

在此示例中,我们将使用 for 循环而不是 while 循环来检查给定字符串的单词数。

public class Example2 {
   public static void main(String[] args) {
    // 初始化字符串
    String msg = "Tutorials Point 欢迎您!!";
    System.out.println("给定的字符串是:" + msg);
    // 初始单词数
    int total = 1;
    // for 循环计算单词数
    for (int i = 0; i < msg.length(); i++) {
        // 检查当前字符是否为空格
        if ((msg.charAt(i) == ' ') && (msg.charAt(i + 1) != ' ')) {
            total++; // 增加单词数
        }
    }
    // 打印结果
    System.out.println("给定字符串中的单词数:" + total);
   }
}

输出

给定的字符串是:Tutorials Point Welcomes You!!
给定字符串中的单词数:4

示例 3

这是另一个 Java 程序,它将使用名为"split()"的内置方法检查给定字符串中的单词数。我们将使用"\s+"分隔符作为 split() 方法的参数来将单词与空格分开,并检查单词数,我们将使用字符串的长度属性。

public class Example3 {
    public static void main(String[] args) {
        // 初始化字符串
        String msg = "Tutorials Point Welcomes You!! ";
        System.out.println("给定的字符串是:" + msg);
        // 将字符串拆分成单词
        String[] arrayStr = msg.split("\s+");
        // 计算单词数
        int totalWord = arrayStr.length;
        // 打印结果
        System.out.println("给定字符串中的单词数:" + totalWord);
    }
}

输出

给定的字符串是:Tutorials Point 欢迎您!!
给定字符串中的单词数:4

结论

在本文中,我们了解了什么是字符串以及如何在 Java 中检查给定字符串的单词数。对于此字符串操作,我们使用了 String 的内置方法,例如 charAt() 和 split() 以及 while 和 for 循环。


相关文章