簡體   English   中英

用分隔符連接兩個字符串

[英]Joining two strings with delimiters

我正在嘗試將兩個帶有逗號分隔符的字符串連接在一起。 我想循環它以使其成為連續的,這意味着逗號之前的字符串一中的第一項之后是字符串二中的第一項,依此類推。 這是兩個字符串以及我希望它們如何加入。

String 1 = 0,E,EEE,0,0,WWWW,EE,W,EE
String 2 = 0,NNN,N,SS,0,S,N,N,SS

Outcome = 00,ENNN,EEEN,0SS,00,WWWS,EEN,WN,EESS

這甚至可能嗎? 我有連接兩個字符串的代碼,但它沒有按照我需要的順序排列它們。

將一分為二,然后使用IntStream生成兩個標記數組的索引,並通過串聯然后,連接元素。 喜歡,

String a = "0,E,EEE,0,0,WWWW,EE,W,EE", b = "0,NNN,N,SS,0,S,N,N,SS";
String[] aTok = a.split(","), bTok = b.split(",");
String out = IntStream.range(0, Math.min(aTok.length, bTok.length))
        .mapToObj(i -> aTok[i] + bTok[i]).collect(Collectors.joining(","));
System.out.println(out);

輸出(根據要求)

00,ENNN,EEEN,0SS,00,WWWWS,EEN,WN,EESS

將每個字符串拆分為一個字符串數組,
毗連同指數的物品在兩個表中,並附加,每對后:

String s1 = "0,E,EEE,0,0,WWWW,EE,W,EE";
String s2 = "0,NNN,N,SS,0,S,N,N,SS";

String[] tokens1 = s1.split(",");
String[] tokens2 = s2.split(",");

StringBuilder sb = new StringBuilder("");
for (int i = 0; i < tokens1.length; i++) {
    sb.append(tokens1[i]).append(tokens2[i]).append(",");
}

sb.deleteCharAt(sb.length() - 1); // remove the last ","

String result = sb.toString();
System.out.println(result);

當然,這僅在 2 個字符串可以拆分為相同數量的項目時才有效。

暫無
暫無

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

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