-1

我想在 Java 中创建一种表。我最初尝试使用 HashMap:

public Map<String, Double> namesAndPrices = new HashMap<String, Double>();

当我想像这样添加另一个字符串时,这不起作用:

public Map<String, Double, String> namesAndPrices = new HashMap<String, Double, String>();

我可以使用什么类在 Java 中创建一种表,我可以在其中轻松查找值以及不查找值。

4

3 回答 3

3

使用对象,而不是试图将非结构化数据放入集合中。

您的地图应该是 a Map<String, Product>,其中 Product 对象包含您的产品的名称、价格和其他属性。

顺便说一句,您在上一个问题中已经被告知要这样做,您甚至接受了答案。

于 2012-06-10T07:54:20.667 回答
0

您需要使用一个对象作为包装双精度和字符串的第二个参数:

class Container
{
    public String str;
    public double dbl;
}

public Map<String, Container> container = new HashMap<String, Container>();

您可能希望使用更好的名称,没有公共成员,但希望能说明总体思路。

于 2012-06-10T07:53:58.343 回答
0

您最好创建一个自定义对象占位符。

Map<String, Database> namesAndPrices = new HashMap<String, Database>();

public class Database {
    private double doub;
    private String str;

    public Database(double doub, String str) {
        this.doub = doub;
        this.str = str;
    }

    // getters
}
于 2012-06-10T07:55:49.703 回答