本题目要求编写程序统计一行字符中单词的个数。所谓“单词”是指连续不含空格的字符串,各单词之间用空格分隔,空格数可以是多个。
输入格式:
输入给出一行字符。
输出格式:
在一行中输出单词个数。
输入样例:
Let's go to room 209.
输出样例:
5
完整代码
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// 创建一个Scanner对象以接收用户输入
Scanner scanner = new Scanner(System.in);
// 读取一行输入
String input = scanner.nextLine();
// 初始化单词计数器
int count = 0;
// 用于标记当前是否在单词中
boolean inWord = false;
// 遍历输入字符串的每个字符
for (int i = 0; i < input.length(); i++) {
// 获取当前字符
char ch = input.charAt(i);
// 如果当前字符是字母或数字
if (Character.isLetterOrDigit(ch)) {
// 如果不在单词中,则增加单词计数器
if (!inWord) {
count++;
// 标记为当前处于单词中
inWord = true;
}
} else {
// 如果当前字符不是字母或数字,则标记为不在单词中
inWord = false;
}
}
// 打印单词计数器的值,即输入字符串中的单词数目
System.out.println(count);
}
}