【发布时间】:2018-01-22 04:18:54
【问题描述】:
如何从字符串文本参数中找到平均字长?我有 void someMethod(String text){}。单词由字母和数字组成。有必要考虑到空格和标点符号
public static List<String> someMethod(String text) {
String[] words = text.split("\\p{P}?[ \\t\\n\\r]+"); // split by whitespace
int count = 0;
double sum = 0;
for (String word : words) {
double wordLength = word.length();
sum += wordLength;
count++;
}
final double average = sum / count;
List<String> list = Arrays.stream(words).filter(s -> s.length()>= average).collect(Collectors.toList());
list.sort(Comparator.comparingInt(s -> Math.abs(s.length() - "intelligent".length())));
return list;
}
【问题讨论】:
-
这看起来很像家庭作业@cori - 我们很乐意帮助解决特定的代码问题,但不会为您做所有事情!我建议查看字符串 API docs.oracle.com/javase/7/docs/api/java/lang/String.html
-
不幸的是,您的问题仅包含要求 - 它没有显示您自己为解决此问题所做的任何努力。请在此问题中添加您的尝试 - 因为该站点不是免费的“我们为您做(家庭)工作”服务。除此之外:请转至help center 了解如何/在这里问什么。谢谢!
-
除此之外:首先是您清楚自己的要求。我们无法告诉您什么您的问题是什么 - 我们只能帮助解决...在您之后自己迈出了第一步。
-
您添加了一些代码,但仍然没有描述它的问题。
标签: java