我想将双引号附加到数组中的字符串,然后将它们作为单个字符串连接(保留引号)。有没有这样做的字符串库?我已经尝试过 Apache commons StringUtils.join 和 Google guava 中的 Joiner 类,但找不到任何附加双引号的内容。
我的输入将是一个数组,如下所述:
String [] listOfStrings = {"day", "campaign", "imps", "conversions"};
所需的输出应如下所述:
String output = "\"day\", \"campaign\", \"imps\", \"conversions\"";
我知道我可以遍历数组并附加引号。但如果有的话,我想要一个更清洁的解决方案。
原文由 Anand 发布,翻译遵循 CC BY-SA 4.0 许可协议
使用 Java 8+
Java 8 有
Collectors.joining()
及其重载。它还具有String.join
。使用
Stream
和Collector
朴素但有效的方法
最短且性能可能更好(虽然有点老套)
使用
String.join
非常骇人听闻。不要使用。 (但必须要提到)
使用旧版本的 Java
帮自己一个忙,使用图书馆。立即想到 番石榴。
使用番石榴
没有图书馆
注意事项:
strings
是List<String>
而不是String[]
。您可以使用 --- 将String[]
转换为List<String>
Arrays.asList(strings)
。您可以使用Stream<String>
直接从String[]
获得Arrays.stream(strings)
。+
串联,因为此时+
通常比StringBuilder
表现更好。StringBuilder
而不是+
因为它在旧版本上通常更快。