2017-09-05 99 views
0

我正在使用以下代碼。它以逗號顯示我輸出結果,而不是分成新行。我從數據庫中獲取文本。但是相同的代碼正在處理我的朋友的日食。請幫助我。從DB我正在嘗試將文本拆分爲段落,而不是以新行或段落的逗號分隔

public static List<String> convertParagraphs(String text){ 

    List <String> convertedList= new ArrayList<String>(); 



    String[] paragraphs= text.split("\\|"); 

    convertedList= Arrays.asList(paragraphs); 
    System.out.println("paj"+convertedList.toString()); 
    return convertedList; 

輸入:

Testing|The|Results 

它顯示輸出:

[Testing, The, Results] 

請幫我在這

+1

你'toString'-ING的陣列,默認行爲是你所看到的正是:逗號分隔的數組元素的字符串。 – Stuart

回答

0

您的代碼看起來不錯,和你的電流輸出,也預期。你所看到的只是在字符串列表上調用println時的默認行爲。如果你想在一個新行列表中的每個元素,遍歷該列表,並做到這一點:

for (String item : convertedList) { 
    System.out.println(item); 
} 

在Java 8或更高版本,你可以嘗試:

convertedList.forEach(System.out::println); 
0

您可以通過拆分字符串使用下面的語句斷行:

public static List<String> convertParagraphs(String text){ 

    List <String> convertedList= new ArrayList<String>(); 



    String[] paragraphs= text.split("\\r\\n|\\n|\\r"); 

    convertedList= Arrays.asList(paragraphs); 
    System.out.println("paj"+convertedList.toString()); 
    return convertedList; 
+0

OP中給出的輸入文本使用管道,而不是換行符/回車符。但是,除此之外,直接打印字符串的原始列表時,會產生混淆。 –

+0

仍然是同樣的問題 – Anita