如何使用Guava连接字符串?

sta*_*ome 5 java guava

我写了一些代码来连接字符串:

String inputFile = "";      

for (String inputLine : list) {
    inputFile +=inputLine.trim());
}
Run Code Online (Sandbox Code Playgroud)

但是我不能+用来连接,所以我决定和Guava一起去.所以我需要使用Joiner.

inputFile =joiner.join(inputLine.trim());
Run Code Online (Sandbox Code Playgroud)

但它给了我一个错误.我需要帮助来解决这个问题.非常感谢.

jlo*_*rdo 21

您不需要循环,可以使用Guava执行以下操作:

// trim the elements:
List<String> trimmed = Lists.transform(list, new Function<String, String>() {
    @Override
    public String apply(String in) {
        return in.trim();
    }
});
// join them:
String joined = Joiner.on("").join(trimmed);
Run Code Online (Sandbox Code Playgroud)

  • @stacktome:这是一个坏主意.使用XML解析库,而不是`String`. (4认同)

Tal*_*ala 6

"+"应该有效.遇到问题时不要使用库.尝试了解性质.另外,你会有一个非常复杂的代码,有数百个库:))

这应该是有效的.

for (String inputLine : list) {
    inputFile += inputLine.trim();
}
Run Code Online (Sandbox Code Playgroud)

您可能还想使用Stringbuilder

 StringBuilder sb = new StringBuilder("Your string");
 for (String inputLine : list) {
      sb.append(inputLine.trim());
 }
 String inputFile = sb.toString();
Run Code Online (Sandbox Code Playgroud)


Ayu*_*lik 5

尝试

String inputFile = Joiner.on(",").join(list);
Run Code Online (Sandbox Code Playgroud)