どのようにNのパーティションではなく、大きさNのパーティションを持つリストを分割するには?

ジェイコブG.:

グアバの方法Lists#partition、パーティションList<?>AにList<List<?>>各パーティションに含まれるN要素(関数の第2のパラメータによって指定され、最後のパーティションを除くように)。

それは、このメソッドを使用しますが、作成することが可能であるN代わりに、パーティションを?

ない場合は、それについて移動するいくつかの方法は何ですか?

私が作成しようとしてきた31以下の(とパーティションのkeysあるList<String>大きさの57)、それだけで作成されます29

List<String> keys = ...;

var paritions = Lists.partition(keys, (int) Math.ceil(keys.size() / 31D));
誠:

Nのパーティションを作成できるようにするには、2Nの要素の最小値を持っている必要があります。あなたのケースでは、あなたが62個の要素を必要とするだろうことを意味する、31のパーティション要件があります。

あなたは57個の要素を持っているので、あなたしている五行 - または2年半パーティション - あなたは最後のパーティションが一つだけの要素を持つ、29個のパーティションを得る理由です必要な最小の短いです。

グアバは、その仕事をしています。あなたは適切にあなたがしたいパーティションに細分化するのに十分な要素を持っていません。

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=222625&siteId=1