`

fastjson和数组,list,map之间转换

    博客分类:
  • java
阅读更多
package fastJson.test; 
 
import java.util.ArrayList; 
import java.util.HashMap; 
import java.util.List; 
import java.util.Map; 
 
import com.alibaba.fastjson.JSON; 
import com.alibaba.fastjson.JSONArray; 
 
public class FastJsonTest1 

 
    /**
     * 数组转json格式字符串
     */ 
    public void array2Json(){ 
        String[] arr = {"bill","green","maks","jim"}; 
        String jsonText = JSON.toJSONString(arr, true); 
        System.out.println("array2Json()方法:jsonText=="+jsonText); 
        // 输出结果:jsonText==["bill","green","maks","jim"] 
    } 
 
    /**
     * json格式字符串转数组
     */ 
    public void json2Array(){ 
        String jsonText = "[\"bill\",\"green\",\"maks\",\"jim\"]"; 
        JSONArray jsonArr = JSON.parseArray(jsonText); 
        System.out.println("json2Array()方法:jsonArr=="+jsonArr); 
        // 输出结果:jsonArr==["bill","green","maks","jim"] 
    } 
     
    /**
     * 数组转json格式字符串
     */ 
    public void array2Json2(){ 
        User user1 = new User("P001","TOM",16); 
        User user2 = new User("P002","JACKSON",21); 
        User user3 = new User("P003","MARTIN",20); 
        User[] userArr = {user1,user2,user3}; 
        String jsonText = JSON.toJSONString(userArr, true); 
        System.out.println("array2Json2()方法:jsonText=="+jsonText); 
        //输出结果:jsonText==[{"age":16,"id":"P001","name":"TOM"},{"age":21,"id":"P002","name":"JACKSON"},{"age":20,"id":"P003","name":"MARTIN"}] 
    } 
     
    /**
     * json格式字符串转数组
     */ 
    public void json2Array2(){ 
        String jsonText = "[{\"age\":16,\"id\":\"P001\",\"name\":\"TOM\"},{\"age\":21,\"id\":\"P002\",\"name\":\"JACKSON\"},{\"age\":20,\"id\":\"P003\",\"name\":\"MARTIN\"}]"; 
        JSONArray jsonArr = JSON.parseArray(jsonText); 
        System.out.println("json2Array2()方法:jsonArr=="+jsonArr); 
        // 输出结果:jsonArr==[{"age":16,"id":"P001","name":"TOM"},{"age":21,"id":"P002","name":"JACKSON"},{"age":20,"id":"P003","name":"MARTIN"}] 
    } 
     
    /**
     * list集合转json格式字符串
     */ 
    public void list2Json(){ 
        List list = new ArrayList(); 
        User user1 = new User("L001","TOM",16); 
        list.add(user1); 
        User user2 = new User("L002","JACKSON",21); 
        list.add(user2); 
        User user3 = new User("L003","MARTIN",20); 
        list.add(user3); 
        String jsonText = JSON.toJSONString(list, true); 
        System.out.println("list2Json()方法:jsonText=="+jsonText); 
        //输出结果:jsonText==[{"age":16,"id":"L001","name":"TOM"},{"age":21,"id":"L002","name":"JACKSON"},{"age":20,"id":"L003","name":"MARTIN"}] 
    } 
     
    /**
     * list集合转json格式字符串
     */ 
    public void list2Json2(){ 
        List list = new ArrayList(); 
        Address address1 = new Address("广东省","深圳市","科苑南路","580053"); 
        User user1 = new User("L001","TOM",16,address1); 
        list.add(user1); 
        Address address2 = new Address("江西省","南昌市","阳明路","330004"); 
        User user2 = new User("L002","JACKSON",21,address2); 
        list.add(user2); 
        Address address3 = new Address("陕西省","西安市","长安南路","710114"); 
        User user3 = new User("L003","MARTIN",20,address3); 
        list.add(user3); 
        String jsonText = JSON.toJSONString(list, true); 
        System.out.println("list2Json2()方法:jsonText=="+jsonText); 
        //输出结果:jsonText==[{"address":{"city":"深圳市","post":"580053","province":"广东省","street":"科苑南路"},"age":16,"id":"L001","name":"TOM"},{"address":{"city":"南昌市","post":"330004","province":"江西省","street":"阳明路"},"age":21,"id":"L002","name":"JACKSON"},{"address":{"city":"西安市","post":"710114","province":"陕西省","street":"长安南路"},"age":20,"id":"L003","name":"MARTIN"}] 
    } 
 
    /**
     * map转json格式字符串
     */ 
    public void map2Json(){ 
        Map map = new HashMap(); 
        Address address1 = new Address("广东省","深圳市","科苑南路","580053"); 
        map.put("address1", address1); 
        Address address2 = new Address("江西省","南昌市","阳明路","330004"); 
        map.put("address2", address2); 
        Address address3 = new Address("陕西省","西安市","长安南路","710114"); 
        map.put("address3", address3); 
        String jsonText = JSON.toJSONString(map, true); 
        System.out.println("map2Json()方法:jsonText=="+jsonText); 
        //输出结果:jsonText=={"address1":{"city":"深圳市","post":"580053","province":"广东省","street":"科苑南路"},"address2":{"city":"南昌市","post":"330004","province":"江西省","street":"阳明路"},"address3":{"city":"西安市","post":"710114","province":"陕西省","street":"长安南路"}} 
    } 
     
     
     
    public static void main(String[] args) 
    { 
        FastJsonTest1 test = new FastJsonTest1(); 
        //数组转json格式字符串 
        test.array2Json(); 
         
        //json格式字符串转数组 
        test.json2Array(); 
         
        //数组转json格式字符串 
        test.array2Json2(); 
         
        //json格式字符串转数组 
        test.json2Array2(); 
         
        //list集合转json格式字符串 
        test.list2Json(); 
         
        //list集合转json格式字符串 
        test.list2Json2(); 
         
        //map转json格式字符串 
        test.map2Json(); 
    } 
分享到:
评论

相关推荐

    fastJson用于格式的转换

    4. 支持集合和数组转换 FastJson不仅支持单个对象的转换,还支持List、Array等集合类型的转换。例如: ```java String jsonArrayString = "[{\"name\":\"Tom\"},{\"name\":\"Jerry\"}]"; List<Person> list = JSON....

    Java读取json文件,并转化为map取值

    如果JSON包含嵌套的对象或数组,它们会被转换为`Map`或`List`。 对于Map取值,你可以使用`get`方法: ```java String key = "exampleKey"; Object value = jsonData.get(key); ``` 如果值是另一个JSON对象或数组...

    fastjson使用案例源码

    - 对于集合和数组,Fastjson支持List、Set、Array等,例如`List<String> list = JSON.parseArray(jsonArrayStr, String.class);` 3. **注解支持** - 使用`@JSONField`注解可以控制字段的序列化和反序列化,如忽略...

    fastjson + gson + jsonlib + jacksonjar包

    Json-lib还支持将JavaBean、Map、Collection和数组转换为JSON格式,以及将JSON转换回这些对象。 4. Jackson: Jackson是另一个流行的Java JSON库,由 FasterXML 维护。Jackson 提供了多种方式来处理JSON,包括流式...

    很好用的JAVA类转JSON工具:FastJSON (2).docx

    FastJSON可以处理Java集合(如List、Set)和数组,将其转换为JSON格式,反之亦然: ```java // 创建一个Person对象列表 List<Person> personList = new ArrayList(); personList.add(new Person("Alice", 28)); ...

    java使用FastJson解析Json数据

    文章中提到的示例JSON数据结构表明,FastJson可以处理嵌套的JSON对象和数组。在这个例子中,JSON数据包含两个主要部分:"result"和"selList"。"result"是一个普通的JSON对象,而"selList"是一个数组,数组中的每个...

    json-lib及其依赖的包

    1. **JSON对象和数组**:JSON包含两种结构——对象和数组。对象是由键值对组成的,用花括号 `{}` 包裹;数组是有序的值集合,用方括号 `[]` 包围。JSON-lib支持将Java中的Map转换为JSON对象,将List或数组转换为JSON...

    json2XMl.7z

    在实际应用中,还需要考虑一些其他因素,比如处理嵌套的JSON对象和数组,保持XML结构的整洁,以及可能需要的错误处理和异常捕获。这个`json2XML`示例可能已经包含了这些功能,使得开发者能够方便地在JSON和XML之间...

    详解json在SpringBoot中的格式转换.docx

    - `JSONObject`和`JSONArray`分别代表JSON对象和数组,它们可以像操作Java的Map和List一样进行操作。 - `toJSONString()`用于将Java对象转换为JSON字符串,而`parseObject()`则用于将JSON字符串转换为Java对象。 ...

    json转换json-lib

    json-lib可以轻松地将这些结构转换为Java的Map和List。 2. **json-lib的使用**: - **序列化**:将Java对象转换为JSON字符串。例如,你可以使用`net.sf.json.JSONObject.fromObject(object)`或`...

    json-lib-2.4-jdk15.jar

    1. **JSON对象和数组的创建**:json-lib提供了`net.sf.json.JSONObject`和`net.sf.json.JSONArray`类,可以方便地创建和操作JSON对象和数组。 2. **Java对象到JSON的转换**:json-lib支持将Java对象如HashMap、...

    JSON-LIB快速入门

    除了基本的对象和数组转换,JSON-LIB还支持更复杂的转换,例如集合、Map等。 - 集合转换: ```java List<Person> people = new ArrayList(); // add some people... JSONObject jsonObject = JSONObject.fromObject...

    临时转换

    比如,当我们需要将一个存储String对象的List转换为Integer对象的List,可以使用流(Stream)API的`map()`方法配合`Integer.valueOf()`函数实现。 此外,Java的泛型系统允许我们在定义集合时指定元素类型,但有时...

    json解析程序(未完成)

    - 解析JSON到Map/ArrayList:如果不确定JSON的具体结构,可以解析为`Map, Object>`或`List<Object>`,便于动态处理。 4. JSON生成: - 将Java对象转换为JSON字符串:通过Jackson的`ObjectMapper....

    json-lib-2.4-jdk15及其依赖jar包

    3. **类型转换**:库支持将Java对象如Date、Number、String、Map、List等与JSON对象相互转换,方便在Java代码中处理JSON数据。 4. **序列化和反序列化**:用户可以通过`json-lib`将Java对象序列化为JSON字符串,...

    json-lib-2.4(2013.6.13前最新版本)选定版

    这个版本提供了对JSON对象与Java对象之间相互转换的功能,使得开发者可以轻松地在JSON字符串和Java的Map、List、数组等数据结构间进行操作。它支持多种JVM环境,包括JDK1.5,这从压缩包中的`json-lib-2.4-jdk15.jar`...

    java 解析 生成 json

    JSON主要由对象和数组两种结构构成。对象是以大括号{}包围的键值对集合,键用双引号包围,值可以是各种数据类型,包括字符串、数字、布尔值、null、对象或数组。数组则用方括号[]表示,包含零个或多个值,值之间用...

    json-lib-2.4-jdk15

    json-lib 提供了一系列的转换方法,如 `net.sf.json.JSONObject` 和 `net.sf.json.JSONArray` 类,它们分别用于表示JSON中的对象和数组。你可以使用 `fromObject()` 方法将Java对象转化为JSON格式,使用 `toObject...

    josn.jar

    例如,使用`org.json`库中的`JSONObject`类可以将JSON字符串转换为Java Map对象,`JSONArray`则可以转换为List。 ```java import org.json.JSONObject; import org.json.JSONArray; String jsonString = "{\"name\...

    json 转化工具类

    - **集合和数组转化**:支持List、Set、Array等集合类型的转化。 - **Map转化**:可以将Map对象转化为JSON对象,反之亦然。 - **自定义类型转化**:对于自定义的复杂类型,工具类可能会提供特殊的处理方式,如注解...

Global site tag (gtag.js) - Google Analytics