1、join
源码:
/**
* @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();
}
注:
*Java 8之后才有
*delimiter:分隔符
实例:
String message = String.join("-","java","is","great");
System.out.println(message);
结果:
java-is-great
2、StringJoiner
源码:
public StringJoiner(CharSequence delimiter,
CharSequence prefix,
CharSequence suffix) {
Objects.requireNonNull(prefix, "The prefix must not be null");
Objects.requireNonNull(delimiter, "The delimiter must not be null");
Objects.requireNonNull(suffix, "The suffix must not be null");
// make defensive copies of arguments
this.prefix = prefix.toString();
this.delimiter = delimiter.toString();
this.suffix = suffix.toString();
this.emptyValue = this.prefix + this.suffix;
}
注:
delimiter:分隔符
prefix:前缀
suffix:后缀
实例:
StringJoiner stringJoiner = new StringJoiner(":","[","]");
String string = stringJoiner.add("Python").add("java").add("scala").toString();
System.out.println(string);
输出:
[Python:java:scala]