java编程输入一段字符串,统计其中有多少个单词,单词用空格隔开,并输出所有由六个字母组成的单词
时间: 2023-06-17 21:03:31 浏览: 96
可以使用Java的String类和正则表达式来实现。
以下是示例代码:
```java
import java.util.Scanner;
public class WordCount {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一段字符串:");
String str = scanner.nextLine();
// 统计单词数
int count = str.trim().split("\\s+").length;
System.out.println("单词数:" + count);
// 输出所有由六个字母组成的单词
String[] words = str.trim().split("\\s+");
System.out.print("所有由六个字母组成的单词:");
for (String word : words) {
if (word.matches("[a-zA-Z]{6}")) {
System.out.print(word + " ");
}
}
}
}
```
运行效果如下:
```
请输入一段字符串:hello world, I am a Java programmer.
单词数:7
所有由六个字母组成的单词:world Java
```
说明:
1. 通过Scanner类从控制台读取输入的字符串。
2. 使用trim()方法去掉字符串前后的空格,然后使用split()方法按照空格分割字符串,得到所有单词的数组,长度即为单词数。
3. 遍历所有单词,使用正则表达式判断是否由六个字母组成,符合条件则输出。其中,"[a-zA-Z]{6}"表示由6个英文字母组成的字符串。
阅读全文