join
引数としてイテレータを受け入れるため、次のコードが機能するはずです。
import static org.apache.commons.lang.StringUtils.join;
import java.text.StringCharacterIterator;
…
join(new StringCharacterIterator("A String"), " ");
残念ながら、そうではありません。誰かが私に理由を説明できますか?
join
引数としてイテレータを受け入れるため、次のコードが機能するはずです。
import static org.apache.commons.lang.StringUtils.join;
import java.text.StringCharacterIterator;
…
join(new StringCharacterIterator("A String"), " ");
残念ながら、そうではありません。誰かが私に理由を説明できますか?
ドキュメントによると、StringCharacterIterator
から継承し、からのみ継承し CharacterIterator
ます。Aは、必要なCharacterIterator
ジェネリックから継承しません。Iterator
join
http://download.oracle.com/javase/1.4.2/docs/api/java/text/CharacterIterator.html
まず、join メソッドは 2 つの引数を取ります: イテレータと区切り文字列または文字です。
また、StringCharacterIterator の javadoc を見ると、このクラスが を実装していないことがわかりますjava.util.Iterator
。