我正在尝试将JSON String数组转换为Java,这是从这段javascript中提供的:
javaFunction(["a1", "a2"]); <--- This is called in javascript
在Java中
public static void javaFunction(<What here?> jsonStringArray){ //<---- This is called in Java
//Convert the JSON String array here to something i can iterate through,
//For example:
for(int index = 0; index < convertedArray.length; index++){
System.out.println(convertedArray[index];
}
}
答案 0 :(得分:0)
您可以使用:
List<String> list = new ArrayList<String>();
for(int i = 0; i < jsonStringArray.length(); i++){
list.add(jsonStringArray.getJSONObject(i).getString("name"));
}
答案 1 :(得分:0)
我用这个解决了它:
在JavaScript中:
javaFunction(JSON.Stringify(["a1", "a2"]));
在Java中
public static void javaFunction(String jsonArrayString){
JSONArray jsonArray = new JSONArray(jsonArrayString);
List<String> list = new ArrayList<String>();
for(int i = 0; i < jsonArray.length(); i++){
list.add(jsonArray.getString(i));
}
}
答案 2 :(得分:0)
修剪第一个和最后一个括号;
<强>即强>
jsonArrayString = jsonArrayString.subStr(1,jsonArrayString.length()-1);
你会得到&#34; a1&#34;,&#34; a2&#34;,&#34; a3&#34;,&#34; a4&#34;
然后使用String的分割功能。
String[] convertedArray= jsonArrayString.split(",");