我有一個這樣的字符串:將字符串轉換成一個數組列表的Java
["http://www.ebuy.al/Images/dsc/17470_500_400.jpg", "http://www.ebuy.al/Images/dsc/17471_500_400.jpg"]
我怎麼能轉換成String
的ArrayList
S'方法1:
我有一個這樣的字符串:將字符串轉換成一個數組列表的Java
["http://www.ebuy.al/Images/dsc/17470_500_400.jpg", "http://www.ebuy.al/Images/dsc/17471_500_400.jpg"]
我怎麼能轉換成String
的ArrayList
S'方法1:
這將是更合適的
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庫
方法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);
}
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。
字符串從服務中找到我,如下所示:[「http://www.ebuy.al/Images/dsc/17470_500_400.jpg」,「http:/ /www.ebuy.al/Images/dsc/17471_500_400.jpg「]',現在應該如何轉換成不帶引號的字符串」 – Xhulio 2014-09-01 16:10:29
@Luigi從服務中得到確切的字符串:'[「http:// www.ebuy.al/Images/dsc/17470_500_400.jpg「,」http://www.ebuy.al/Images/dsc/17471_500_400.jpg「]'現在我想要將字符串轉換爲字符串的數組列表,並且每個元素都包含這種'String':http://www.ebuy.al/Images/dsc/17470_500_400.jpg以便我可以將它用作URL。以上所有方法都不會影響功能 – Xhulio 2014-09-01 16:27:44
@Xhulio I第一次閱讀你的答案更新 – 2014-09-01 16:28:18
您可以使用簡單的CSV解析器,如果你刪除第一個和最後一個括號( '[', ']')
事情是這樣的:
List<String> items = Arrays.asList(str.split("\\s*,\\s*"));
它看起來像JSON一樣可疑。是嗎? – FatalError 2014-09-01 15:16:52
是的,它來自JSON服務 – Xhulio 2014-09-01 15:18:01
什麼是您的數據輸入? – 2014-09-01 15:18:31