在java中将包含Integer数组的String转换为Integer数组

时间:2017-02-15 10:57:47

标签: java arrays

我从前端发送JSON并在JAVA(后端)中读取它,其中变量abc包含整数列表。

我有String locationjson = "["12","55","62","90"]";

我想在java中将它转换为Arraylist / List<Integer> ...我已经在stackOverflow上搜索了答案但是在Javascript的情况下它是解决的,我想在java中找到解决方案。

2 个答案:

答案 0 :(得分:1)

String abc = "[\"12\",\"55\",\"62\",\"90\"]";
String[] stringArray = abc.substring(1, abc.length() - 1).split(",");
List<Integer> integerList = new ArrayList<>();
for (String s: stringArray)     {
    integerList.add(Integer.parseInt(s.substring(1, s.length() - 1)));
}

答案 1 :(得分:1)

您可以使用正则表达式从此String中查找您的int,以便您可以使用它:

public static void main(String[] args) {
    String str = "\"[\"12\",\"55\",\"62\",\"90\"]\"";
    Pattern p = Pattern.compile("\\d+");
    Matcher m = p.matcher(str);
    List<Integer> list = new ArrayList<>();
    while (m.find()) {
        list.add(Integer.parseInt(m.group()));
    }
    for (int i = 0; i < list.size(); i++) {
        System.out.println(list.get(i));
    }
}

希望这可以帮到你。