Qual é o objetivo dos Métodos de Fábrica de Conveniência sobrecarregados para Coleções em Java 9

O Java 9 vem commétodos de fábrica de conveniência para criar listas imutáveis. Finalmente, a criação de uma lista é tão simples quanto:

List<String> list = List.of("foo", "bar");

Mas existem 12 versões sobrecarregadas desse método, 11 com 0 a 10 elementos e uma com var args.

static <E> List<E>  of(E... elements)

Mesmo é o caso comSet eMap.

Como existe um método var args, qual é o sentido de ter 11 métodos extras?

O que eu acho é que os var-args criam uma matriz, então os outros 11 métodos podem pular a criação de um objeto extra e, na maioria dos casos, de 0 a 10 elementos. Existe alguma outra razão para isso?

questionAnswers(6)

yourAnswerToTheQuestion