我需要编写一个JSON方法,它将接收表示整数数组的JSON字符串(例如" [100,500,300,200,400]")并返回包含JSON数组字符串中整数的整数ArrayList
我有点失望,但我仍然有麻烦。我甚至应该做一个循环吗?
ArrayList<Integer> ListInt;
public ArrayList<Integer> createArrayListofIntegersFromJSONString(String jsonString) throws JSONException {
for (int i = 0; i < jsonString.size(); i++) {
ArrayList[i] = jsonString[i];
return ArrayList;
}
答案 0 :(得分:0)
你可以使用像Jackson或Gson这样的图书馆,最好是你正在做的事情。无论如何,如果您不关心输入验证等,可以尝试使用正则表达式:
private static final Pattern numberPattern = Pattern.compile("(\\d+)");
public static List<Integer> list(String pseudoJson) {
Matcher matcher = numberPattern.matcher(pseudoJson);
List<Integer> list = new ArrayList<>();
while(matcher.find()) {
list.add(Integer.valueOf(matcher.group(1)));
}
return list;
}
测试:
public static void main(String[] args) throws Exception {
String json = "[ 100, 500, 300, 200, 400 ]";
System.out.println(">>>" + list(json));
}