谁说的 StringJoiner 不好?真香警告……

基本使用

从字面理解上是用来拼接字符串的,一般需要分隔符进行拼接。例如

hello, world
这三段分隔符由 , 分割,如果需要拼接,需要这样使用

StringBuilder sb = new StringBuilder();
sb.append("hello");
sb.append(",");
sb.append("world");

现在呢,不需要了,只需要,轻松一点,使用 StringJoiner,即可轻松完成拼接,妈妈再也不用担心我的拼接了。

public static void main(String[] args) {
    StringJoiner stringJoiner = new StringJoiner(",");
    stringJoiner.add("hello");
    stringJoiner.add("world");System.out.println(stringJoiner.toString());
}

StringJoiner 的详细介绍

类结构图,如图所示

其父类是 Object,其成员变量有如下内容

prefix  拼接后的字符串前缀
delimiter  拼接时的字符串分隔符
suffix 拼接后的字符串后缀
value 拼接后的值
emptyValue 空值的情况,value为null时返回。

构造方法


提供了两个构造方法,一个必须带分隔符,另一个必须带分隔符、前缀、后缀,

公开方法

setEmptyValue:设置空值
toString:转换成 String
add:添加字符串
merge:从另一个 StringJoiner 合并
length:长度(包括前缀后缀)

流式API

public static void main(String[] args) {
    StringJoiner stringJoiner = new StringJoiner(",").add("hello").add("world");
    System.out.println(stringJoiner.toString());
}

输出

hello,world

前后缀拼接

在示例中需要制定前后缀

public static void main(String[] args) {
    StringJoiner stringJoiner = new StringJoiner(",", "[", "]");
    stringJoiner.add("hello");
    stringJoiner.add("world");
    System.out.println(stringJoiner.toString());
}

输出

[hello,world]

空值处理

输出空白字符串

public static void main(String[] args) {
    StringJoiner stringJoiner = new StringJoiner(",");
    System.out.println(stringJoiner.toString());
}

输出

[]

输出前后缀

public static void main(String[] args) {
    StringJoiner stringJoiner = new StringJoiner(",", "[", "]");
}

输出

[]

输出指定字符串

public static void main(String[] args) {
    StringJoiner stringJoiner = new StringJoiner(",", "[", "]");
    stringJoiner.setEmptyValue("void");
    System.out.println(stringJoiner.toString());
}

输出

void

String.join()

public static void main(String[] args) {
    String str = String.join(",", "hello", "world");
    System.out.println(str);
}

输出

hello,world

小小是一枚双鱼座的程序猿,我是小小,我们下期再见!


猜你喜欢

转载自blog.csdn.net/pisa8559/article/details/111041204