统计任意一个字符串中的英文单词总数、最长单词的长度、最短单词的长度、单词的平均长度。
时间: 2024-03-16 17:41:10 浏览: 157
好的,统计任意一个字符串中的英文单词总数、最长单词的长度、最短单词的长度、单词的平均长度的 Java 方法如下:
```java
public static void countWords(String str) {
String[] words = str.split("\\W+"); // 按非单词字符分割字符串
int wordCount = words.length; // 单词总数
int maxLength = 0; // 最长的单词长度
int minLength = Integer.MAX_VALUE; // 最短的单词长度
int totalLength = 0; // 所有单词长度之和
for (String word : words) {
maxLength = Math.max(maxLength, word.length()); // 更新最长单词长度
minLength = Math.min(minLength, word.length()); // 更新最短单词长度
totalLength += word.length(); // 累计单词长度
}
double averageLength = (double) totalLength / wordCount; // 计算平均单词长度
System.out.println("单词总数:" + wordCount);
System.out.println("最长的单词长度:" + maxLength);
System.out.println("最短的单词长度:" + minLength);
System.out.println("单词的平均长度:" + averageLength);
}
```
其中,使用 `split("\\W+")` 方法可以按非单词字符分割字符串,返回一个字符串数组,包含字符串中的所有单词。然后,我们遍历这个字符串数组,更新最长的单词长度、最短的单词长度和所有单词长度之和,最后计算出平均单词长度。
例如,输入字符串 `"This is a test string."`,输出结果为:
```
单词总数:5
最长的单词长度:6
最短的单词长度:1
单词的平均长度:2.8
```
希望这个方法能够帮助到你,如果有任何疑问,欢迎继续询问。
阅读全文