java编写程序:统计单词 /*输入一行字符,统计其中单词的个数。各单词之间用空格分隔,空格数可以是多个。 例:括号内是说明 输入 2 (repeat=2) Reold building room 123 Programming is fun 输出 4 3 */
时间: 2024-01-31 09:05:00 浏览: 95
以下是Java程序实现:
```java
import java.util.Scanner;
public class WordCount {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String line = scanner.nextLine();
int count = 0;
// 将输入的字符串按空格分隔成字符串数组
String[] words = line.split("\\s+");
// 遍历字符串数组,统计单词数量
for (String word : words) {
// 排除只有空格的情况
if (!word.trim().isEmpty()) {
count++;
}
}
System.out.println(count);
}
}
```
程序运行后,会要求输入一行字符,输入后会输出单词的个数。
相关问题
Java编写程序:统计单词 /*输入一行字符,统计其中单词的个数。各单词之间用空格分隔,空格数可以是多个。 例:括号内是说明 输入 2 (repeat=2) Reold building room 123 Programming is fun
下面是一个Java程序,可以统计输入字符串中的单词个数:
```java
import java.util.Scanner;
public class WordCount {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入一行字符:");
String line = input.nextLine();
int count = 0;
boolean wordStarted = false;
for (int i = 0; i < line.length(); i++) {
char c = line.charAt(i);
if (c == ' ') {
if (wordStarted) {
count++;
wordStarted = false;
}
} else {
wordStarted = true;
}
}
if (wordStarted) {
count++;
}
System.out.println("单词个数为:" + count);
}
}
```
这个程序首先使用 `Scanner` 类获取用户输入的一行字符串,然后使用一个循环遍历字符串中的每个字符。如果当前字符是空格,则表示一个单词结束,如果之前已经开始了一个单词,则单词个数加1;如果当前字符不是空格,则表示一个单词开始,标记 `wordStarted` 置为 `true`。
循环结束后,如果最后一个字符是字母或数字,则最后一个单词没有统计,需要额外加1。最后输出统计结果。
java编写程序:统计单词 /*输入一行字符,统计其中单词的个数。各单词之间用空格分隔,空格数可以是多个。 例:括号内是说明输入 2 (repeat=2) Reold building room 123 Programming is fun 输出 4 3 */
以下是 Java 代码实现:
```java
import java.util.Scanner;
public class WordCount {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String input = scanner.nextLine();
scanner.close();
int count = 0;
boolean wordStart = false;
for (int i = 0; i < input.length(); i++) {
char c = input.charAt(i);
if (c == ' ') {
if (wordStart) {
count++;
wordStart = false;
}
} else {
wordStart = true;
}
}
if (wordStart) {
count++;
}
System.out.println(count);
}
}
```
代码思路:
1. 使用 `Scanner` 从标准输入读取一行字符串。
2. 遍历字符串中的每个字符,如果遇到空格,则判断是否在单词中,并累加单词个数(如果在单词中),并将 `wordStart` 标记为 `false`。否则,将 `wordStart` 标记为 `true`。
3. 最后,如果最后一个字符不是空格且在单词中,需要再次累加单词个数。
4. 输出单词个数。
阅读全文