首页 >Java >java教程 >如何在 Java 中高效地连接字符串列表?

如何在 Java 中高效地连接字符串列表?

Susan Sarandon
Susan Sarandon原创
2024-12-25 20:38:16934浏览

How Can I Efficiently Concatenate Lists of Strings in Java?

Java:高效连接字符串列表

在 Java 中,有多种方法可以将列表中的多个字符串组合成单个字符串。虽然可以手动创建循环并将每个字符串附加到 StringBuilder,检查第一个字符串并相应地添加分隔符,但这种方法可能很麻烦。

引入 String.join()

Java 8 引入了 String.join() 方法,该方法提供了一种连接字符串集合的简洁方法。其语法如下:

public static String join(CharSequence delimiter, Iterable<? extends CharSequence> elements)

其中:

  • 分隔符:放置在输出字符串中每个元素之间的分隔符
  • 元素:可迭代集合CharSequences(即字符串)的数量为join

使用 String.join() 的示例

使用 String.join() 连接字符串列表:

List<String> names = Arrays.asList("Josh", "Sarah", "David");
String joinedNames = String.join(", ", names); // "Josh, Sarah, David"

非字符串的 Collectors.joining()元素

对于非 String 元素的集合,您可以将 Collectors.joining() 方法与流 API 结合使用:

List<Person> people = Arrays.asList(
    new Person("John", "Smith"),
    new Person("Anna", "Martinez"),
    new Person("Paul", "Watson")
);

String joinedFirstNames = people.stream()
    .map(Person::getFirstName)
    .collect(Collectors.joining(", ")); // "John, Anna, Paul"

StringJoiner 了解更多Control

StringJoiner 类提供了对连接过程的更多控制。它允许为结果字符串设置前缀、后缀和分隔符。其语法为:

public class StringJoiner {
    StringJoiner(CharSequence delimiter)
}

StringJoiner 示例

StringJoiner joiner = new StringJoiner(", ", "[", "]");
joiner.add("Apple");
joiner.add("Orange");
joiner.add("Banana");

String result = joiner.toString(); // "[Apple, Orange, Banana]"

以上是如何在 Java 中高效地连接字符串列表?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn