0

我目前正在开发一些旧的遗留应用程序,并且必须使用已经 EOL 多年的Java 1.4 。我需要从地图中获取值。我的地图如下所示:

Key     |  Value
---------------
String1 | int1
String2 | String6
String3 | Float1
String4 | String7
String5 | Object1

我尝试了以下,但我一直得到一个空

String myVal = (String) map.get(String2);

是否可以在不使用迭代器的情况下获取值?

4

1 回答 1

1

您应该以您报告的方式获得价值,这是完全正确的:

String myVal = (String) map.get("myKey");

只要地图里面有那个钥匙。

您报告的地图方案的问题是地图可能包含字符串、浮点数或其他值类型,因此将其直接转换为字符串是危险的。您应该检查值类型:

Object myValObj = map.get("myKey");
if (myValObj instanceof String) {
  // Handle the string
} else if (myValObj instanceof Float) {
  // Handle the float
} // ....
于 2014-10-03T14:30:01.897 回答