如何从Map中获取String <string,string [] =“”>中的String值?</string,>

时间:2013-02-02 03:55:56

标签: java collections map

基本上,我有一个Map<String, String[] >,其中包含一串带密钥的字符串。如果我执行String value = myMap.get("keyName");,则会返回Object而不是字符串,并且回显它会生成如下内容:Ljava.lang.String;@1dfa166。做toString()也无济于事。

我需要做什么才能将值变为字符串:

我的代码如下所示:

String value ="" + request().body().asFormUrlEncoded().get("keyName");

此处asFormUrlEncoded()方法返回Map

1 个答案:

答案 0 :(得分:5)

您将返回一个字符串数组(声明的通用Map的第二个参数)。

将其更改为

String [] values = myMap.get( "keyName" );

并检查values.length以查看数组中有多少个字符串。如果它只是一个,您只需访问values[0]

它允许字符串数组的原因是因为表单中的每个键都可以有多个值,所以它不能返回单个字符串。