Java 如何使用番石榴连接字符串?

Java 如何使用番石榴连接字符串?,java,guava,Java,Guava,我编写了一些代码来连接字符串: String inputFile = ""; for (String inputLine : list) { inputFile +=inputLine.trim()); } 但是我不能用+来连接,所以我决定用番石榴。所以我需要使用Joiner inputFile =joiner.join(inputLine.trim()); 但这给了我一个错误。我需要帮助来解决这个问题。非常感谢 “+”应该能起作用。遇到问题时不要使用库。试着去了解大自

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

String inputFile = "";      

for (String inputLine : list) {
    inputFile +=inputLine.trim());
}
但是我不能用
+
来连接,所以我决定用番石榴。所以我需要使用Joiner

inputFile =joiner.join(inputLine.trim());
但这给了我一个错误。我需要帮助来解决这个问题。非常感谢

“+”应该能起作用。遇到问题时不要使用库。试着去了解大自然。否则,您将有一个包含数百个库的非常复杂的代码:))

这应该是可行的

for (String inputLine : list) {
    inputFile += inputLine.trim();
}
您可能还想使用


您不需要循环,可以使用番石榴进行以下操作:

// 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);
//修剪元素:
List trimmed=Lists.transform(List,新函数(){
@凌驾
公共字符串应用(字符串输入){
返回.trim();
}
});
//加入他们:
连接的字符串=Joiner.on(“”).join(修剪);
试试看


如果要添加修剪,请使用lambdas:
试一试


我讨厌出错。为什么不能用“+”来连接呢?知道这个错误也很有帮助…你知道java字符串类有一个,对吧?我的代码检查器告诉我,这不是编写代码的最佳方式。我需要使用Guava。我不能用任何其他方法。这就是我被困在这里的原因。听上去他在使用第一种方法时出现了代码分析错误,因为它效率低下。除了Guava API方法,我不能使用任何其他方法。StringBuilder用于连接字符串,因为直接连接每次都会创建一个新对象。正确的是代码分析错误。它建议我用番石榴。我不知道如何使用Guava连接字符串您的代码检查器是什么?根据我的回答,您是否尝试过使用StringBuilder?这是比我做得更快的标准方法。删除了我的答案和+1你的答案:详细说明如何避免空格,我使用trim()来避免空格。@stacktome:你也可以用番石榴来避免空格,请参阅我的更新答案。@stacktome:这是个坏主意。使用XML解析库,而不是
字符串。。使用下面的StringBuilder版本。它至少为您节省了一行代码。在这里,我不能使用trim()。我需要避免每一行中的所有空格。该死的不。这里不需要一个
Joiner
。还有一个收藏家。
// 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);
String inputFile = Joiner.on(",").join(list);
String inputFile = Joiner.on(",")
.join(list.stream()
.map(p->p.trim())
.collect(Collectors.toList()));