簡體   English   中英

將ArrayList轉換為String

[英]Converting an ArrayList to String

我目前正在使用JSoup從HTML表中抓取數據,然后將其存儲到ArrayList中。 然后,我想將這些值存儲在SQL數據庫中。 根據我的理解,這些必須先轉換為String,然后才能插入數據庫。 我如何將這些ArrayLists轉換為String?

這是我目前的代碼:

    Document doc = Jsoup.connect(URL).timeout(5000).get();

    for (Element table : doc.select("table:first-of-type")) 
    {
        for (Element row : table.select("tr:gt(0)")) { 
            Elements tds = row.select("td");

            List1.add(tds.get(0).text());
            List2.add(tds.get(1).text());
            List3.add(tds.get(2).text());
        }
    }

要獲得所需的所有值,您可以非常輕松地遍歷列表:

public static void main(String[] args) {
    List<String> List1 = new ArrayList<>();
    for (String singleString : List1){
        //Do whatever you want with each string stored in this list
    }
}

Java集合框架沒有提供任何直接的實用工具方法來將ArrayList轉換為Java中的String。 但是以依賴注入及其IOC容器而聞名的Spring框架也為API提供了常見的實用程序,例如在Java中將Collection轉換為String的方法。 您可以使用Spring Framework的StringUtils類將ArrayList轉換為String。 StringUtils類提供了三種轉換任何集合的方法

例如,Java中的ArrayList到String,如下所示:

public static String collectionToCommaDelimitedString(Collection coll)
public static String collectionToDelimitedString(Collection coll, String delim)
public static String collectionToDelimitedString(Collection coll, String delim, String  prefix, String suffix)

得到它了....

好吧,我不確定是否有一些特殊的方法來實現你的要求。 您需要遍歷數組。 您可以使用StringBuilder而不是String進行一些優化。 我不確定你會在性能方面獲得多大提升。

無論如何這是代碼的樣子..

StringBuilder sb = new StringBuilder();
for (Object o : list1){
  sb.append(o.toString()+delimiter); // delimiter could be , or \t or || 

 //You could manipulate the string here as required..
 //  enter code here`
}
return sb.toString();

如果需要,您需要拆分字符串。 (如果他們需要進入單獨的領域

暫無
暫無

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

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