Dividir um array em blocos

Escreva uma função que divida um array em blocos de tamanho n, em que n é o tamanho de cada bloco.

Exemplos

chunkify([2, 3, 4, 5], 2) ➞ [[2, 3], [4, 5]]

chunkify([2, 3, 4, 5, 6], 2) ➞ [[2, 3], [4, 5], [6]]

chunkify([2, 3, 4, 5, 6, 7], 3) ➞ [[2, 3, 4], [5, 6, 7]]

chunkify([2, 3, 4, 5, 6, 7], 1) ➞ [[2], [3], [4], [5], [6], [7]]

chunkify([2, 3, 4, 5, 6, 7], 7) ➞ [[2, 3, 4, 5, 6, 7]]

Notas

  • É O.K se o último bloco não ficar completamente preenchido (veja o exemplo #2).
  • Os números inteiros sempre terão apenas um dígito.

Exemplo em Java

assertArrayEquals(new int[][]{new int[]{2, 3}, new int[]{4, 5}}, Program.chunkify(new int[]{2, 3, 4, 5}, 2));