📜  Java8中的java.util.StringJoiner(1)

📅  最后修改于: 2023-12-03 15:16:03.094000             🧑  作者: Mango

Java8中的java.util.StringJoiner

在Java8中,新增了一个类StringJoiner,它提供了一种简单的方式来连接多个字符串。StringJoiner类的设计目的是在将一组值组合为一个字符串时特别有用。

使用方式

StringJoiner类的使用非常简单,只需创建对象并执行add()方法来将字符串添加到连接器中,最后执行toString()方法返回连接后的字符串。下面是一个示例:

StringJoiner sj = new StringJoiner(", ");
sj.add("apple");
sj.add("orange");
sj.add("banana");
String result = sj.toString(); // result = "apple, orange, banana"

上面的代码中,我们创建了一个使用逗号加空格来连接字符串的新StringJoiner实例。然后,我们添加了三个水果名字到连接器中,最后通过调用toString()方法将它们连接成一个字符串。

自定义连接器

除了使用默认的连接符,我们也可以自定义连接器。我们可以提供带一个参数的构造函数来指定我们想要使用的连接符。例如,我们可以使用竖线来连接字符串:

StringJoiner sj = new StringJoiner(" | ");
sj.add("foo");
sj.add("bar");
sj.add("baz");
String result = sj.toString(); // result = "foo | bar | baz"

另外,我们还可以提供第二个参数作为前缀,并且提供第三个参数作为后缀。例如:

StringJoiner sj = new StringJoiner(", ", "[", "]");
sj.add("foo");
sj.add("bar");
sj.add("baz");
String result = sj.toString(); // result = "[foo, bar, baz]"
处理空值

在连接字符串时,我们可能需要处理空值。我们可以使用StringJoiner类提供的setEmptyValue()方法来使用一个默认字符串来代替空值:

StringJoiner sj = new StringJoiner(", ");
sj.setEmptyValue("no fruits yet");
String result = sj.toString(); // result = "no fruits yet"

在上面的例子中,如果我们没有向连接器中添加任何元素,那么将返回设定好的默认字符串。

总结

在Java8中,StringJoiner提供了一种简单的方式将多个字符串连接在一起。我们可以方便地自定义连接器、前缀和后缀,并且也能很好地处理空值。StringJoiner类非常适合在需要连接字符串的场合,例如构建SQL语句等。