首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在Java中使用一行代码来统计String[]中字符串的出现次数?

在Java中使用一行代码来统计String[]中字符串的出现次数?
EN

Stack Overflow用户
提问于 2013-07-18 17:24:18
回答 1查看 3.8K关注 0票数 15

我有一个String数组

String[] myArray = {"A", "B", "B", "C"};

有没有一种快速的方法来计算字符串在该数组中出现的次数?是的,我知道我可以自己迭代和计算:

int count = 0;
String whatToFind = "B";
for (String s : myArray) {
    if (s.equals(whatToFind)) {
        ++count;
    }
}

但我想知道是否有一个实用函数来处理这个问题。我在ArraysArrayUtils上找不到任何东西。有没有可能用一行代码来做到这一点呢?

EN

回答 1

Stack Overflow用户

发布于 2013-07-18 17:43:26

您也可以尝试使用Guava,它包含很多有用的实用程序。使用下面的代码,您可以通过Multiset计算频率

public static void main(final String[] args) {
        String[] myArray = {"A", "B", "B", "C"};
        Multiset<String> wordsMultiset = HashMultiset.create();
        wordsMultiset.addAll(new ArrayList<String>(Arrays.asList(myArray)));
        int counts=wordsMultiset.count("B");
        System.out.println(counts);
    }

虽然我知道你正在寻找一个单一的liner,但是Guava充满了更多的实用程序,这是常规的java实用程序所不可能的。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17719494

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档