Java中的 String.join() 將列表以某個字串分隔組裝為一個字串 (之前我都不知道,自己寫方法)
之前用Python,有個很方便的 list.join 方法,將列表中的字串以 特殊字元分隔 組裝為一個字串,後來換了Java,也會習慣的認為 Java的 List也會有類似的操作,但是 點不出來吖。
所以 要用到類似的操作時都是自己 寫個迴圈方法。
但是,今天看同學寫程式碼,剛好有類似的操作,然後使用了 String.join(), 當時就是一句 臥槽,原來有啊,當時就覺得這肯定得寫個Blog記錄下。
介紹下這個API:注意下 @since 1.8
/**
* Returns a new String composed of copies of the
* {@code CharSequence elements} joined together with a copy of
* the specified {@code delimiter}.
*
* <blockquote>For example,
* <pre>{@code
* String message = String.join("-", "Java", "is", "cool");
* // message returned is: "Java-is-cool"
* }</pre></blockquote>
*
* Note that if an element is null, then {@code "null"} is added.
*
* @param delimiter the delimiter that separates each element
* @param elements the elements to join together.
*
* @return a new {@code String} that is composed of the {@code elements}
* separated by the {@code delimiter}
*
* @throws NullPointerException If {@code delimiter} or {@code elements}
* is {@code null}
*
* @see java.util.StringJoiner
* @since 1.8
*/
public static String join(CharSequence delimiter, CharSequence... elements) {
Objects.requireNonNull(delimiter);
Objects.requireNonNull(elements);
// Number of elements not likely worth Arrays.stream overhead.
StringJoiner joiner = new StringJoiner(delimiter);
for (CharSequence cs: elements) {
joiner.add(cs);
}
return joiner.toString();
}
/**
* Returns a new {@code String} composed of copies of the
* {@code CharSequence elements} joined together with a copy of the
* specified {@code delimiter}.
*
* <blockquote>For example,
* <pre>{@code
* List<String> strings = new LinkedList<>();
* strings.add("Java");strings.add("is");
* strings.add("cool");
* String message = String.join(" ", strings);
* //message returned is: "Java is cool"
*
* Set<String> strings = new LinkedHashSet<>();
* strings.add("Java"); strings.add("is");
* strings.add("very"); strings.add("cool");
* String message = String.join("-", strings);
* //message returned is: "Java-is-very-cool"
* }</pre></blockquote>
*
* Note that if an individual element is {@code null}, then {@code "null"} is added.
*
* @param delimiter a sequence of characters that is used to separate each
* of the {@code elements} in the resulting {@code String}
* @param elements an {@code Iterable} that will have its {@code elements}
* joined together.
*
* @return a new {@code String} that is composed from the {@code elements}
* argument
*
* @throws NullPointerException If {@code delimiter} or {@code elements}
* is {@code null}
*
* @see #join(CharSequence,CharSequence...)
* @see java.util.StringJoiner
* @since 1.8
*/
public static String join(CharSequence delimiter,
Iterable<? extends CharSequence> elements) {
Objects.requireNonNull(delimiter);
Objects.requireNonNull(elements);
StringJoiner joiner = new StringJoiner(delimiter);
for (CharSequence cs: elements) {
joiner.add(cs);
}
return joiner.toString();
}
相關文章
- Java 中將列表轉換為字串,並使用逗號分隔其中的元素Java字串
- 獲取母字串中某個子字串的某個確定的index值字串Index
- JS中將一個值轉換為字串的3種方法JS字串
- JavaScript將字串中的多個空格縮減為一個空格JavaScript字串
- Python中查詢字串某個字元最常用的方法!Python字串字元
- 將字串每一個單詞第一個字元設定為大寫字串字元
- mongodb查詢資料庫中某個欄位中的值包含某個字串的方法MongoDB資料庫字串
- C++實現一個將字串中所有字母轉換為大寫的方法C++字串
- Oracle以逗號分隔的字串拆分為多行資料Oracle字串
- python怎麼查詢字串中是否包含某個字串Python字串
- 寫一個方法把物件和字串互轉物件字串
- 如何用python判斷列表中是否包含多個字串中的一個或多個?Python字串
- 寫一個方法,將字串中的單詞倒轉後輸出,如:`my love` -> `ym evol`字串
- javascript將字串中的多個空格替換為一個空格的正則例項JavaScript字串
- javascript中將數字轉為字串的方法JavaScript字串
- Java拼接字串時,去掉最後一個多餘的逗號,或者Java刪除某個字元Java字串字元
- 寫一個方法判斷給定的字串是否同態(isomorphic)字串
- 獲得String字串中某個字元出現的次數字串字元
- 在 Python 中將列表轉換為字串需要哪些技術Python字串
- 如何在Java中將字串轉換為日期Java字串
- 寫個方法,找出指定字串中重複最多的字元及其長度字串字元
- 字串、列表、字典內建方法字串
- PHP獲取字串中的某個字元:採用陣列的方式PHP字串字元陣列
- 將一個字串進行反轉:將字串中指定部分進行反轉。比如“abcdefg”反轉為”abfedcg”字串
- Python科研武器庫 - 字串操作 - 字串分隔 split()、rsplit()Python字串
- javascript中如何判斷一個字串是否為JSON格式JavaScript字串JSON
- Python字串刪除第一個字元常用的方法!Python字串字元
- 編寫一個程式求輸入字串的長度字串
- LeetCode 387. 字串中的第一個唯一字元 (Java)LeetCode字串字元Java
- Java中的字串Java字串
- 查詢字串中第一個非重複字元的3種方法字串字元
- C#判斷一個字串是否是數字或者含有某個數字C#字串
- 得到字串 位元組 長度 中文 兩個字元 英文一個字元字串字元
- 想寫一下我個人認為成功的方法
- python列表中是否存在某個元素Python
- java字串常用方法Java字串
- 取週期性字串中的其中一個字串
- Python中列表和字串的反轉Python字串