将String转换为arrayList Java

时间:2014-09-01 15:14:45

标签: java string arraylist

我有一个像这样的字符串:

["http://www.ebuy.al/Images/dsc/17470_500_400.jpg", "http://www.ebuy.al/Images/dsc/17471_500_400.jpg"]

如何将其转换为ArrayList的{​​{1}}?

4 个答案:

答案 0 :(得分:1)

使用Arrays#asList

String[] stringArray = { "http://www.ebuy.al/Images/dsc/17470_500_400.jpg", "http://www.ebuy.al/Images/dsc/17471_500_400.jpg"}
List<String> stringList = Arrays.asList(stringArray);

如果您的字符串包含大括号[]和双引号"",那么您应首先手动解析字符串。

String yourString = "[\"http://www.ebuy.al/Images/dsc/17470_500_400.jpg\", \"http://www.ebuy.al/Images/dsc/17471_500_400.jpg\"]";
String[] stringArray = yourString
    .substring(1, yourString.length() - 2)
    .replace('"', '\0')
    .split(",\\s+");
List<String> stringList = Arrays.asList(stringArray);

尝试上述当且仅当时,您将始终以此格式收到String。否则,请使用适当的JSON解析器库,如Jackson

答案 1 :(得分:0)

方法1:遍历数组并在每次迭代时将每个元素放到arrayList中。

方法2:使用asList() method

<强>例1: 使用asList()方法

String[] urStringArray = { "http://www.ebuy.al/Images/dsc/17470_500_400.jpg", "http://www.ebuy.al/Images/dsc/17471_500_400.jpg"}
List<String> newList = Arrays.asList(urStringArray);

<强>例2 使用简单的迭代

List<String> newList = new ArrayList<String>();
for(String aString:urStringArray){
newList.add(aString);
}

答案 2 :(得分:0)

如果删除第一个和最后一个括号,可以使用简单的CSV解析器(&#39; [&#39;,&#39;]&#39;)

这样的事情:

List<String> items = Arrays.asList(str.split("\\s*,\\s*"));

答案 3 :(得分:0)

这会更合适

String jsonArr = "[\"http://www.ebuy.al/Images/dsc/17470_500_400.jpg\", 
                   \"http://www.ebuy.al/Images/dsc/17471_500_400.jpg\"]";
List<String> listFromJsonArray = new ArrayList<String>();
JSONArray jsonArray = new JSONArray(jsonArr);
for(int i =0 ;i<jsonArray.length();i++){
      listFromJsonArray.add(jsonArray.get(i).toString());
}

不要忘记添加json