基本上,我有一个 Map<String, String[] >
其中包含一堆带有键的字符串。如果我这样做String value = myMap.get("keyName");
,这将返回 Object
而不是字符串,并且回显它会产生如下所示的内容: Ljava.lang.String;@1dfa166
。做toString()
也没有帮助。
我需要做什么才能获取字符串值:
我的代码如下所示:
String value ="" + request().body().asFormUrlEncoded().get("keyName");
这里是asFormUrlEncoded()
方法返回 Map
最佳答案
您将返回一个字符串数组(声明的通用 Map 的第二个参数)。
更改为
String[]values = myMap.get("keyName");
并检查values.length以查看数组中有多少个字符串。如果只有一个,您可以将其作为 values[0]
访问。
它允许使用字符串数组的原因是表单中的每个键可以有多个值,因此它不能返回单个字符串。
关于java - 如何从 Java 中的 Map <String, String[] > 获取字符串值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14658416/