我需要指导,通过LinkedHashMap
下面迭代值LinkedHashMap的<字符串,对象>
{"8":{"Name":"test","city":"ny"}, "9":{"Name":"test","city":"ny"}}
我能够为8
和值显示键{"Name":"test","city":"ny"}
,但我'想显示Name
和city
作为密钥8
内的关键值。
任何帮助表示赞赏。
我需要指导,通过LinkedHashMap
下面迭代值LinkedHashMap的<字符串,对象>
{"8":{"Name":"test","city":"ny"}, "9":{"Name":"test","city":"ny"}}
我能够为8
和值显示键{"Name":"test","city":"ny"}
,但我'想显示Name
和city
作为密钥8
内的关键值。
任何帮助表示赞赏。
您的数据看起来像JSON,所以也许你正在寻找使用JSON解析器的解决方案。
例如与org.json
包你的代码可以是这样的:
String jsonStr = "{\"8\":{\"Name\":\"test1\",\"city\":\"ny1\"},"
+ " \"9\":{\"Name\":\"test2\",\"city\":\"ny2\"}}";
JSONObject parent = new JSONObject(jsonStr);
for (Object key : parent.keySet()){
JSONObject childObject = parent.getJSONObject(key.toString());
System.out.println("-----------");
System.out.println(childObject);
System.out.println("Name = "+childObject.get("Name"));
System.out.println("city = "+childObject.get("city"));
}
输出:
-----------
{"city":"ny1","Name":"test1"}
Name = test1
city = ny1
-----------
{"city":"ny2","Name":"test2"}
Name = test2
city = ny2
谢谢你的哥们!这有助于 –
鉴于你HashMap中的值只是一个简单的字符串,那么你可以使用这个:
LinkedHashMap<String, Object> linkedHashMap = new LinkedHashMap<String, Object>();
linkedHashMap.put("8", "{\"Name\":\"test\",\"city\":\"ny\"}");
String value = (String)linkedHashMap.get("8");
String split[] = value.split("\"");
System.out.println(split[3]);
System.out.println(split[7]);
哪里是你的努力吗? – Rehman
我不明白你的问题。 –
你可能需要在你的值上使用一些getter,比如'getName' – 2015-11-05 18:08:32