我有以下json数组:
key_highlights: [
{
feature_id: "",
name: "body_type",
display_name: "Body Type",
data_type: "text",
data_values: [
"Sedan"
]
},
{
feature_id: "",
name: "exterior_color",
display_name: "Exterior Color",
data_type: "color",
data_values: [
{
hexcode: "#ffffff",
actual: "Teak Brown",
normalized: "other"
}
]
},
{
feature_id: "",
name: "transmission_type",
display_name: "Transmission Type",
data_type: "text",
data_values: [
1,
2
]
}
}]
如json中所给出的,data_values数组可以具有不同类型的内容。它可以是json对象,整数或字符串的数组。我没有得到如何解析data_values数组。
答案 0 :(得分:0)
根据您的评论,“data_type”与“data_values”的类型无关,它似乎是一个非常糟糕的设计。我建议您更改JSON层次结构,但如果您仍想继续使用给定的JSON,请使用以下代码:
Object dataValues = jsonObject.opt("data_values");
if(dataValues instanceof String[]) {
String[] sDataValues = (String[]) dataValues;
}
else if(dataValues instanceof int[]) {
int[] iDataValues = (int[]) dataValues;
}
else if(dataValues instanceof JSONArray) {
JSONArray jArrayDataValues = (JSONArray) dataValues;
}