0

所以我找到了大概解析数学表达式并计算答案的源代码。但是,代码在声明新地图时包含语法错误。这个新地图应该包含一个字符串和一个数字。不过,我确实知道地图不能引用原始类型,例如 double。我该如何解决这个问题?

private Map<String, double=""> user_var = new HashMap<String, double="">();

要查看其余代码,可以访问此处

谢谢

4

5 回答 5

2

您可以将TObjectDoubleHashMap与允许字符串键和double值一起使用。

于 2012-07-09T13:52:39.587 回答
2

这是一个错误的声明。正确的是:

private Map<String, Double> user_var = new HashMap<String, Double>();
于 2012-07-09T13:50:32.960 回答
1

Java 有包装类,允许您在需要 Object 的地方使用原始类型。基本类型 double 的包装类名为 Double。有关详细信息,请参见此处

于 2012-07-09T13:54:13.327 回答
1

利用Map<String, Double> map = new HashMap<String, Double>();

由于自动装箱,您可以像使用它一样使用它

map.put("one",1d);
double d = map.get("one");
于 2012-07-09T13:51:01.630 回答
1

AMap不能包含任何类型的原语。您可以使用包装类创建一个double

private Map<String, Double> user_var = new HashMap<String, Double>();

然后可以(几乎)完全使用它,就好像它包含双打一样:

double value = 2.3;
user_var.put("myVar", value);
于 2012-07-09T13:51:39.890 回答