今天在做kotlin练习的时候,代码中转换原来JAVA解析JSON获取数据集合的问题上卡主了,百度了下只查到Kotlin 用GOSN解析单个对向,没有发现解析数字的问题,遂Google了下,查到代码。
类似如下
{
"
data":
[
{
"
aid":
"1029391",
"
title":
"哥,挺住18秒",
"
description":
"哥,挺住18秒是一款非常考验玩家注意力的冒险html5小游戏,游戏开始后,用鼠标点击屏幕上的小人头,并移动他,记住千万别碰到不断移动的条子,否则游戏结束。",
"
playurl":
"http://play.h5.gamedog.cn/gqtz/",
"
pubdate":
"2015-04-02 14:59:24",
"
label":
null,
"
litpic":
""
},
{
"
aid":
"1029311",
"
title":
"功夫猫",
"
description":
"功夫猫html5游戏是一款让人哭笑不得的休闲游戏,看着四周涌来的喵星人,你要用手中的鼠标点击它们,这样你才能战胜它们,否则只有别它们干掉的命。",
"
playurl":
"http://play.h5.gamedog.cn/gongfumao/",
"
pubdate":
"2015-04-02 14:22:01",
"
label":
null,
"
litpic":
""
},
{
"
aid":
"1028901",
"
title":
"飞越天空之城",
"
description":
"飞越天空之城html5游戏刚开始可能大家觉得无从下手,小编也是玩了几次游戏后才发现技巧所在,左边的按钮是控制小人儿飞起来的方向的,右边的按钮是控制它飞的高度的,左边控制在正上方时可以让小人儿沿着一个方向飞跃。",
"
playurl":
"http://play.h5.gamedog.cn/fytkzc/",
"
pubdate":
"2015-04-02 12:05:14",
"
label":
null,
"
litpic":
""
}
]
JSON数据
代码中的BannerData 是JAVA语言写的,属性名同JSON里面的一样
KOTLIN转换方式
var bannerData:List<BannerData> = gson.fromJson<Array<BannerData>>(data.getString("data"), Array<BannerData>::class.java).toMutableList() bannerData?.let { if (bannerData.size > 0) { Log.e("测试测试测试",bannerData.size.toString()) } }
如上即可