链接哈希图<String,Object>
Linkedhashmap<String,Object>
我需要指导来迭代具有以下值的 LinkedHashMap
{"8":{"Name":"test","city":"ny"}, "9":{"Name":"test","city":"ny"}}
我可以将键显示为 8
,将值显示为 {"Name":"test","city":"ny"}
但我正在尝试将 Name
和 city
显示为键 8
中的键值。
感谢任何帮助。
鉴于你的 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]);
您的数据看起来像 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
我需要指导来迭代具有以下值的 LinkedHashMap
{"8":{"Name":"test","city":"ny"}, "9":{"Name":"test","city":"ny"}}
我可以将键显示为 8
,将值显示为 {"Name":"test","city":"ny"}
但我正在尝试将 Name
和 city
显示为键 8
中的键值。
感谢任何帮助。
鉴于你的 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]);
您的数据看起来像 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