在 JavaScript 中,Array.join() 方法提供了一种将数组元素连接成单个字符串的便捷方法。然而,Java 缺乏内置的等效项。
某些方法涉及使用循环和 StringBuilder 手动构造连接字符串。虽然这种方法提供了灵活性,但对于大型集合来说可能效率较低。
随着 Java 8 的引入,出现了一种更优雅、更高效的解决方案:String.join()。此方法允许您使用指定的分隔符直接连接字符串集合:
List<String> list = Arrays.asList("foo", "bar", "baz"); String joined = String.join(" and ", list); // "foo and bar and baz"
对于非字符串集合,可以使用 Stream API 和连接收集器:
List<Person> list = Arrays.asList( new Person("John", "Smith"), new Person("Anna", "Martinez"), new Person("Paul", "Watson ") ); String joinedFirstNames = list.stream() .map(Person::getFirstName) .collect(Collectors.joining(", ")); // "John, Anna, Paul"
StringJoiner 类提供对连接过程的额外控制,例如为结果字符串指定前缀和后缀:
StringJoiner sj = new StringJoiner(", ", "[", "]"); for (String s : list) { sj.add(s); } String joined = sj.toString(); // "[foo, bar, baz]"
通过将这些方法合并到 Java 工具包中,您可以有效地连接列表或其他集合中的元素,确保无缝连接字符串连接操作。
以上是如何在 Java 中高效地连接字符串列表?的详细内容。更多信息请关注PHP中文网其他相关文章!