Java で、あるタイプ T の要素の任意の深くネストされたコレクション/構造を最適にフラット化したいと思います。
- コピーされたコレクションではなく、ライブビューのみがあります。
- コレクションだけでなく、Iterator、任意の次元の T の配列、Iterable、およびこれらすべての構造を任意に混合してネストすることもできます。
- 静的型安全。
これを処理できるJavaライブラリはありますか?
GuavaCollection<Collection<T>>
は、 --flatten-->という 1 つのネスト レベルのみを処理するようCollection<T>
です。
lambdajは有望に見えます: どうにかして を組み合わせてon()
、これasIterator()
をflattenIterator()
達成することはできますか? 静的にタイプセーフな方法で?