【发布时间】:2011-12-11 10:54:00
【问题描述】:
我本质上想搜索字符串的频率。例如,如果我传入“我”这个词,那么该词在以下句子中的频率:“我去了海滩,我看到了三个人”应该是 2。我已经构建了这样的方法,在该方法中,我获取一个文本(任意长度),用空格将其拆分为一个数组,然后循环遍历该数组,搜索每个索引是否与该单词匹配。然后,我增加频率计数器并将数字作为字符串返回。方法如下:
private int freq() {
String text = "I went to the beach and I saw three people";
String search = "I";
String[] splitter = text.split("\\s+");
int counter = 0;
for (int i=0; i<splitter.length; i++)
{
if (splitter[i]==search)
{
counter++;
}
else
{
}
}
return counter;
}
}
这是在方法之外:
String final = Integer.toString(freq());
System.out.println(final);
但是当我运行它时,我一直得到 0 作为结果。我不知道我做错了什么。
编辑:你们都是对的!多么浪费一个问题:(。
【问题讨论】:
-
你得到了一个很好的 HashMap :) 说真的,了解基本数据结构以及何时使用它们是非常重要的。