List chunk(List list, int chunkSize) { List chunks = []; int len = list.length; for (var i = 0; i < len; i += chunkSize) { int size = i+chunkSize; chunks.add(list.sublist(i, size > len ? len : size)); } return chunks; } List nums = [1,2,3,4,5]; print(chunk(nums, 2)); // [[1,2], [3,4], [5]]