我目前有两节课。 主:
public class Main {
HashMap <String, Product> products = new HashMap<String, Product>();
public Main() {
products.put("Cel403", (new Product("Chocolate sundae", 5.99)));
products.put("Pi342", (new Product("Baseball Bat", 1.50)));
}
public void scan(String id) {
}
产品:
public class Product {
private String descr;
private double price;
public Product(String descr, double cost) {
this.descr = descr;
this.cost = cost;
}
public String toString() {
return (" Description: " + descr + " Cost: " + cost);
我目前有一个产品HashMap设置,产品ID作为字符串,Product类作为实体(项目描述,项目价格)。
我想创建一个我已经开始设置的方法,称为扫描方法。这将允许在参数中键入一个id(&#34; Cel403&#34;或者#34; Pi342&#34;),然后查看HashMap(也许是一个迭代器?)并检索条目(Product)这符合。 我希望它然后将(id)String和附加的Product对象复制到另一个名为&#39; scanning&#39;的HashMap中。 然后,我可以多次运行扫描方法,将更多产品添加到新创建的“扫描”中。 HashMap中。 &#39;扫描&#39;然后,HashMap将包含具有id的扫描对象,并且我将能够计算扫描的HashMap中项目的总成本。 这可能吗?我将如何做到这一点。
答案 0 :(得分:0)
由于Map键必须是唯一的,如果你按照你的描述进行操作,那么每个产品ID只能获得一个条目。如果这就是你要找的东西,你应该做这样的事情
Map <String, Product> scanned = new HashMap<String, Product>();
public void scan(String id) {
scanned.put(id, products.get(id));
}
由于我怀疑这是您所需要的,因此您应该扫描包含扫描产品或产品对及其ID的列表。