 <p>Something like</p> <pre><code>List&lt;String&gt; rollsAll = // from db List&lt;List&lt;String&gt;&gt; rolls = new ArrayList&lt;List&lt;String&gt;&gt;(); int size = rollsAll.size(); for (int i = 0; i &lt; size / 10; i++) { rolls.add(new ArrayList&lt;String&gt;(rollsAll.subList(10*i, 10*(i+1))); } // handle last part if size not divisible by 10 if (size % 10 &gt; 0) { rolls.add(new ArrayList&lt;String&gt;(rollsAll.subList(10 * (size / 10), size))); } </code></pre>