如何在 Java 中把 Hashmap 转换为 JSON 对象 |
您所在的位置:网站首页 › opf格式和json格式 › 如何在 Java 中把 Hashmap 转换为 JSON 对象 |
new JSONObject(hashmap) 将 Hashmap 转换为 JSON 对象
Jackson 库将 Hashmap 转换为 JSON 对象
GSON 库将 Hashmap 转换为 JSON 对象
本文介绍了在 Java 中把 Hashmap 转换为 JSON 对象的方法。我们将看到关于创建一个 hashmap,然后将其转换为 JSON 对象的详细例子。 Hashmap 和 JSON 都是开发人员非常常用的,因为它们帮助我们创建了一个简单的结构,可以轻松地用于存储以及传输数据。 new JSONObject(hashmap) 将 Hashmap 转换为 JSON 对象将哈希图转换为 JSON 对象的最传统方法是调用 JSONObject(),然后传递哈希图。 让我们看一个创建哈希图,然后以 JSON 格式打印的示例。 import java.util.HashMap; import java.util.Map; import org.json.simple.JSONObject; public class Main { public static void main(String[] args) { Map map = new HashMap(); map.put("key1", "value1"); map.put("key2", "value2"); JSONObject json = new JSONObject(map); System.out.printf("JSON: %s", json); }输出: JSON: {"key1":"value1","key2":"value2"}需要注意的是,Map 需要一个字符串,即 key,和一个对象 Object,即 value。这意味着我们可以将任何有效的对象作为值传入 Map,然后将其转换为 JSON 对象。 下面是一个例子,它把一个字符串和一个 Arraylist 作为值。 import java.util.ArrayList; import java.util.HashMap; import java.util.Map; import org.json.simple.JSONObject; public class Main { public static void main(String[] args) { ArrayList stringArrayList = new ArrayList(); stringArrayList.add("firstString"); stringArrayList.add("secondString"); stringArrayList.add("thirdString"); Map map = new HashMap(); map.put("key1", "value1"); map.put("key2", "value2"); map.put("stringList", stringArrayList); JSONObject json = new JSONObject(map); System.out.printf("JSON: %s", json); }输出: JSON: {"key1":"value1","key2":"value2","stringList":["firstString","secondString","thirdString"]} Jackson 库将 Hashmap 转换为 JSON 对象在 Java 中,有一些库可以帮助我们将 Hashmap 转换为 JSON 对象,而且非常灵活。 Jackson 是这些库中的一个,它接收一个 Java map,然后将其转换成 JSON 格式。 我们不要忘记处理 JsonProcessingException,因为 ObjectMapper().writeValueAsString(map) 发现不兼容的数据格式时,会抛出异常。 import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import java.util.HashMap; import java.util.Map; public class Main { public static void main(String[] args) throws JsonProcessingException { Map map = new HashMap(); map.put("key1", "value1"); map.put("key2", "value2"); String json = new ObjectMapper().writeValueAsString(map); System.out.printf("JSON: %s", json); }输出: JSON: {"key1":"value1","key2":"value2"} GSON 库将 Hashmap 转换为 JSON 对象Gson 库是最常用的将 hashmap 转换为 JSON 对象的库之一。它提供了简单的方法来处理我们的 hashmap 和 JSON。 Gson 类有一个方法 toJsonTree 它接收我们的 Map 并将其转换为 JSON 树。但由于我们需要一个 JSON 对象,我们可以使用 toJSONObject() 来使 JSON 树成为一个 JSON 对象。 import com.google.gson.Gson; import com.google.gson.JsonObject; import java.util.HashMap; import java.util.Map; public class Main { public static void main(String[] args) { Map map = new HashMap(); map.put("key1", "value1"); map.put("key2", "value2"); Gson gson = new Gson(); JsonObject json = gson.toJsonTree(map).getAsJsonObject(); System.out.printf("JSON: %s", json); }输出: JSON: {"key1":"value1","key2":"value2"} |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |