java - 计算字符串中的某个字符(Java)

标签 java string

String a="(Yeahhhh)我终于到达了(顶部)";

上面给出的字符串,总共有 4 个“(”和“)”。

我的计数想法是利用 String.charAt 方法。但是,这种方法相当慢,因为由于项目的性质,我必须对每个字符串执行至少 10000 次计数。

任何人有比使用 .chartAt 方法更好的想法或建议吗??????

抱歉之前没有解释清楚,我所说的10000次是指分析10000个句子,即上面的字符串a只是一个句子。

最佳答案

StringUtils.countMatches(wholeString, searchedString) (来自commons-lang)

searchedString 可能是一个字符 - "("

它(如评论中所述)多次调用 charAt(..) 。然而,复杂性如何?好吧,它的 O(n) - charAt(..) 的复杂度 O(1),所以我不明白你为什么这么做发现速度很慢。

关于java - 计算字符串中的某个字符(Java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2418180/

相关文章:

java - 创建通过反射获得的对象集合

Java - 文件共享文件锁定问题

java - 如何在 Java 中获取 Javascript 变量值?

java - 将 Java Set<String> 转换为 Java 逗号分隔字符串

string - 在go中遍历字符串字符的最正确方法是什么

python - Python 中的多重拆分

android - 字符串中的间距

java - 我无法在 Eclipse 中重命名应用程序包名称

java - 合并/加入两个大文件

python - Countletters(排序)