jsonarray转liast_将JSONarray转换为ArrayList

我是用Gson谷歌做的。

将以下行添加到模块中build.gradle:

dependencies {

// ...

// Note that `compile` will be deprecated. Use `implementation` instead.

// See https://stackoverflow.com/a/44409111 for more info

implementation 'com.google.code.gson:gson:2.8.2'

}

JSON 串:

private String jsonString = "[\n" +

"        {\n" +

"                \"id\": \"c200\",\n" +

"                \"name\": \"Ravi Tamada\",\n" +

"                \"email\": \"ravi@gmail.com\",\n" +

"                \"address\": \"xx-xx-xxxx,x - street, x - country\",\n" +

"                \"gender\" : \"male\",\n" +

"                \"phone\": {\n" +

"                    \"mobile\": \"+91 0000000000\",\n" +

"                    \"home\": \"00 000000\",\n" +

"                    \"office\": \"00 000000\"\n" +

"                }\n" +

"        },\n" +

"        {\n" +

"                \"id\": \"c201\",\n" +

"                \"name\": \"Johnny Depp\",\n" +

"                \"email\": \"johnny_depp@gmail.com\",\n" +

"                \"address\": \"xx-xx-xxxx,x - street, x - country\",\n" +

"                \"gender\" : \"male\",\n" +

"                \"phone\": {\n" +

"                    \"mobile\": \"+91 0000000000\",\n" +

"                    \"home\": \"00 000000\",\n" +

"                    \"office\": \"00 000000\"\n" +

"                }\n" +

"        },\n" +

"        {\n" +

"                \"id\": \"c202\",\n" +

"                \"name\": \"Leonardo Dicaprio\",\n" +

"                \"email\": \"leonardo_dicaprio@gmail.com\",\n" +

"                \"address\": \"xx-xx-xxxx,x - street, x - country\",\n" +

"                \"gender\" : \"male\",\n" +

"                \"phone\": {\n" +

"                    \"mobile\": \"+91 0000000000\",\n" +

"                    \"home\": \"00 000000\",\n" +

"                    \"office\": \"00 000000\"\n" +

"                }\n" +

"        },\n" +

"        {\n" +

"                \"id\": \"c203\",\n" +

"                \"name\": \"John Wayne\",\n" +

"                \"email\": \"john_wayne@gmail.com\",\n" +

"                \"address\": \"xx-xx-xxxx,x - street, x - country\",\n" +

"                \"gender\" : \"male\",\n" +

"                \"phone\": {\n" +

"                    \"mobile\": \"+91 0000000000\",\n" +

"                    \"home\": \"00 000000\",\n" +

"                    \"office\": \"00 000000\"\n" +

"                }\n" +

"        },\n" +

"        {\n" +

"                \"id\": \"c204\",\n" +

"                \"name\": \"Angelina Jolie\",\n" +

"                \"email\": \"angelina_jolie@gmail.com\",\n" +

"                \"address\": \"xx-xx-xxxx,x - street, x - country\",\n" +

"                \"gender\" : \"female\",\n" +

"                \"phone\": {\n" +

"                    \"mobile\": \"+91 0000000000\",\n" +

"                    \"home\": \"00 000000\",\n" +

"                    \"office\": \"00 000000\"\n" +

"                }\n" +

"        },\n" +

"        {\n" +

"                \"id\": \"c205\",\n" +

"                \"name\": \"Dido\",\n" +

"                \"email\": \"dido@gmail.com\",\n" +

"                \"address\": \"xx-xx-xxxx,x - street, x - country\",\n" +

"                \"gender\" : \"female\",\n" +

"                \"phone\": {\n" +

"                    \"mobile\": \"+91 0000000000\",\n" +

"                    \"home\": \"00 000000\",\n" +

"                    \"office\": \"00 000000\"\n" +

"                }\n" +

"        },\n" +

"        {\n" +

"                \"id\": \"c206\",\n" +

"                \"name\": \"Adele\",\n" +

"                \"email\": \"adele@gmail.com\",\n" +

"                \"address\": \"xx-xx-xxxx,x - street, x - country\",\n" +

"                \"gender\" : \"female\",\n" +

"                \"phone\": {\n" +

"                    \"mobile\": \"+91 0000000000\",\n" +

"                    \"home\": \"00 000000\",\n" +

"                    \"office\": \"00 000000\"\n" +

"                }\n" +

"        },\n" +

"        {\n" +

"                \"id\": \"c207\",\n" +

"                \"name\": \"Hugh Jackman\",\n" +

"                \"email\": \"hugh_jackman@gmail.com\",\n" +

"                \"address\": \"xx-xx-xxxx,x - street, x - country\",\n" +

"                \"gender\" : \"male\",\n" +

"                \"phone\": {\n" +

"                    \"mobile\": \"+91 0000000000\",\n" +

"                    \"home\": \"00 000000\",\n" +

"                    \"office\": \"00 000000\"\n" +

"                }\n" +

"        },\n" +

"        {\n" +

"                \"id\": \"c208\",\n" +

"                \"name\": \"Will Smith\",\n" +

"                \"email\": \"will_smith@gmail.com\",\n" +

"                \"address\": \"xx-xx-xxxx,x - street, x - country\",\n" +

"                \"gender\" : \"male\",\n" +

"                \"phone\": {\n" +

"                    \"mobile\": \"+91 0000000000\",\n" +

"                    \"home\": \"00 000000\",\n" +

"                    \"office\": \"00 000000\"\n" +

"                }\n" +

"        },\n" +

"        {\n" +

"                \"id\": \"c209\",\n" +

"                \"name\": \"Clint Eastwood\",\n" +

"                \"email\": \"clint_eastwood@gmail.com\",\n" +

"                \"address\": \"xx-xx-xxxx,x - street, x - country\",\n" +

"                \"gender\" : \"male\",\n" +

"                \"phone\": {\n" +

"                    \"mobile\": \"+91 0000000000\",\n" +

"                    \"home\": \"00 000000\",\n" +

"                    \"office\": \"00 000000\"\n" +

"                }\n" +

"        },\n" +

"        {\n" +

"                \"id\": \"c2010\",\n" +

"                \"name\": \"Barack Obama\",\n" +

"                \"email\": \"barack_obama@gmail.com\",\n" +

"                \"address\": \"xx-xx-xxxx,x - street, x - country\",\n" +

"                \"gender\" : \"male\",\n" +

"                \"phone\": {\n" +

"                    \"mobile\": \"+91 0000000000\",\n" +

"                    \"home\": \"00 000000\",\n" +

"                    \"office\": \"00 000000\"\n" +

"                }\n" +

"        },\n" +

"        {\n" +

"                \"id\": \"c2011\",\n" +

"                \"name\": \"Kate Winslet\",\n" +

"                \"email\": \"kate_winslet@gmail.com\",\n" +

"                \"address\": \"xx-xx-xxxx,x - street, x - country\",\n" +

"                \"gender\" : \"female\",\n" +

"                \"phone\": {\n" +

"                    \"mobile\": \"+91 0000000000\",\n" +

"                    \"home\": \"00 000000\",\n" +

"                    \"office\": \"00 000000\"\n" +

"                }\n" +

"        },\n" +

"        {\n" +

"                \"id\": \"c2012\",\n" +

"                \"name\": \"Eminem\",\n" +

"                \"email\": \"eminem@gmail.com\",\n" +

"                \"address\": \"xx-xx-xxxx,x - street, x - country\",\n" +

"                \"gender\" : \"male\",\n" +

"                \"phone\": {\n" +

"                    \"mobile\": \"+91 0000000000\",\n" +

"                    \"home\": \"00 000000\",\n" +

"                    \"office\": \"00 000000\"\n" +

"                }\n" +

"        }\n" +

"    ]";

ContactModel.java:

public class ContactModel {

public String id;

public String name;

public String email;

}

将JSON字符串转换为的代码ArrayList:

注意:您必须导入java.lang.reflect.Type;:

// Top of file

import java.lang.reflect.Type;

// ...

private void parseJSON() {

Gson gson = new Gson();

Type type = new TypeToken>(){}.getType();

List contactList = gson.fromJson(jsonString, type);

for (ContactModel contact : contactList){

Log.i("Contact Details", contact.id + "-" + contact.name + "-" + contact.email);

}

}

希望这会帮助你。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值