7

やってみると

StringUtils.join(myList,',');

コンパイルに失敗します:

cannot find symbol
symbol  : method join(java.util.List,char)

しかし、次の作品:

StringUtils.join(myList.toArray(),',');

ドキュメント (Apache Commons Lang 2.5)は、両方が記録されているため、両方が機能することを示しているようです。

public static String join(Collection collection,
                      char separator)

public static String join(Object[] array,
                      char separator)

何か案は?記録のために、私はインポートしていますimport org.apache.commons.lang.StringUtils;

4

3 に答える 3

12

最も可能性の高い理由は、古いバージョンの Commons Lang を使用していることです。これは、a を使用するメソッドCollectionが 2.3 でのみ追加されたためです。

MANIFEST.MFこれは、フィールドの Jar内のファイルを調べることで確認できImplementation-Versionます。

于 2011-08-23T17:17:41.713 に答える
2

以前に問題があり、インポートの順序が原因であることに気付きました。

コモンズ JAR をインポートの順序にシフトすると、機能します。

お役に立てれば。

于 2012-01-24T09:22:12.823 に答える
0

あなたの問題ではありませんが、関連しています:

にはorg.apache.commons.lang.StringUtils、メソッドが存在します

join(Object[])

それは区切り文字を取りません。

join(Object[], char)
join(Collection, char)

すべて区切り文字を取ります (Stringの代わりに使用できますchar)。したがって、区切り文字を忘れると、エラー メッセージが間違った問題を指している可能性があります。

于 2013-08-28T19:35:53.460 に答える