7

(partition sz step col)Clojure のメソッドやIterableLike.sliding(size: Int, step: Int)Scala の関数に似た方法で分割したいリストがあります。具体的には、次のようなリストが与えられます。

(1, 2, 3)

次のようなサブリストを反復処理できるようにしたい:

(1, 2), (2, 3)

Clojure では、次のようにします。

(partition 2 1 (1, 2, 3))

Scala では次のようになります。

val it = Vector(1, 2, 3).sliding(2)

しかし、私にはそのような贅沢はありません。Guava には、それに近い分割方法がありますが、オーバーラップは提供されません。グーグルも無駄でした。そのような方法は存在しますか、それとも自分でロールバックする必要がありますか?

4

2 に答える 2

2

Guavaにはこれがありませんが、AbstractIteratorおそらく「自分でローリング」するのが簡単になります。

すでに機能リクエストが提出されている可能性があります。そうでない場合は、お気軽にどうぞ。

于 2012-06-11T14:58:42.110 に答える
1

Guava には現在このようなものはありませんが、issueを提出していただければ、追加について話し合うことができます。

私自身はArrayDeque、実行中のウィンドウを格納するために を使用しますが、ライブラリ メソッドには意味がありません。

于 2012-06-10T21:18:35.843 に答える