簡體   English   中英

將字符串轉換為數組List Java

[英]Convert a String into an array List Java

我有一個像這樣的字符串:

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

如何將其轉換為StringArrayList

使用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:遍歷數組,並在每次迭代時將每個元素放入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);

Example2使用簡單迭代

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

如果您刪除了前括號和后括號('[',']'),則可以使用簡單的CSV分析器

像這樣:

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

這樣比較合適

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM