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/