【发布时间】:2014-03-10 04:29:26
【问题描述】:
我正在开发一个针对电子邮件客户端的垃圾邮件过滤器项目。
public MailServer()
{
mailMap = new HashMap<String,ArrayList<MailItem>>();
}
我被指示使用 HashMap 来存储收件人,并使用 ArrayList 来保存他们的 mailItem。下一个方法是计算并返回特定收件人的 mailItems。
public int howManyMailItems(String who)
{
int count = 0;
for(MailItem item : mailMap) {
if(item.getTo().equals(who)) {
count++;
}
}
return count;
}
编辑
我在 BlueJ 中工作,当我尝试编译该类时,它会在第 4 行突出显示 mailMap 并说
“for-each 循环不适用”
public int howManyMailItems(String who)
{
int count = 0;
for(MailItem item : mailMap.keySet()) {
if(item.getTo().equals(who)) {
count++;
}
}
return count;
}
当我尝试使用 keySet 时,它显示类型不兼容。
【问题讨论】:
-
嗯...怎么了??你的问题到底是什么?
-
我在 BlueJ 工作,当我尝试编译该类时,它会在第 4 行突出显示 mailMap 并说
-
"for-each 循环不适用"