Listを複数のリストに分割したいのですがやり方がわからず教えていただきたいです

// たとえば要素の数が10のリストがあったとして

List<Integer> list = new ArrayList<>();

for (int i = 0; i < 10; i++) {
 list.add(i);
}


// それを4つのリストに要素の数ができるだけ均等になるように分割したいです

List<Integer> list1 = new ArrayList<>(); // <- 要素は0,1,2
List<Integer> list2 = new ArrayList<>(); // <- 要素は3,4,5
List<Integer> list3 = new ArrayList<>(); // <- 要素は6,7
List<Integer> list4 = new ArrayList<>(); // <- 要素は8,9

どうぞよろしくお願いいたします