5

文字列を連結するコードをいくつか書きました。

String inputFile = "";      

for (String inputLine : list) {
    inputFile +=inputLine.trim());
}

しかし+、連結には使用できないため、Guava を使用することにしました。したがって、Joiner を使用する必要があります。

inputFile =joiner.join(inputLine.trim());

しかし、それは私にエラーを与えています。これを修正するには助けが必要です。どうもありがとう。

4

4 に答える 4

22

ループは必要ありません。グアバで次のことができます。

// 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);
于 2013-07-30T14:16:09.943 に答える
6

「+」が機能するはずです。問題があるときはライブラリを使用しないでください。自然を理解しようとする。そうしないと、何百ものライブラリを含む非常に複雑なコードになります:))

これは代わりに機能するはずです。

for (String inputLine : list) {
    inputFile += inputLine.trim();
}

また、 Stringbuilderを使用することもできます

 StringBuilder sb = new StringBuilder("Your string");
 for (String inputLine : list) {
      sb.append(inputLine.trim());
 }
 String inputFile = sb.toString();
于 2013-07-30T14:14:24.750 に答える
5

試す

String inputFile = Joiner.on(",").join(list);
于 2013-07-30T14:16:27.810 に答える
0

トリムを追加したい場合は、ラムダに夢中になって
ください:

String inputFile = Joiner.on(",")
.join(list.stream()
.map(p->p.trim())
.collect(Collectors.toList()));
于 2018-01-31T21:05:36.740 に答える