【发布时间】:2017-03-15 18:00:02
【问题描述】:
有问题的类是下面的类:
public Customer(String aName, String anAddress, int anArea)
{
this.fullName = aName;
this.address = anAddress;
this.area = anArea;
}
我像这样创建了地图(customers 变量单独初始化,创建了一个哈希图):
public void addCustomer(String regNo, String name, String address, int area)
{
customers.put(regNo, new Customer(name, address, area));
}
我希望程序做的是遍历地图,检查具有特定区域号码的客户。
方法头是这样的:
public Customer findCustomersInArea(int area)
{
}
我创建了一个单独的方法,该方法使用 for each 循环遍历映射,该循环打印与 Customer 对象关联的所有详细信息,我尝试模拟此方法但无济于事。它看起来像这样:
public void printCustomers()
{
Set<String> customerKeys = customers.keySet();
for (String eachCustomer: customerKeys)
{
System.out.println (customers.get(eachCustomer));
}
}
我希望我已经清楚了,如果我需要提供更多详细信息,请告诉我。
【问题讨论】:
-
嗯,到目前为止你做得很好。你现在在循环中只有
getArea的Customer中的Customer,并将其与参数int area进行比较。该方法看起来应该与您的printCustomers()非常相似,但是在获取每个area并进行比较时需要添加一些额外的代码,如果找到return that customerBUt 有更好的方法来执行 Map 的 getValueSet 所以你只需要担心Customer