Если бы вы реализовывали свои собственные вещи, я бы не заботился об этом (но будьте осторожны с аргументами varargs), если вам действительно не нужно беспокоиться об этих дополнительных битах (и дополнительной производительности и т. Д.).
от вопрос уже есть ответ здесь:
В чем смысл перегруженных методов фабрики удобства для коллекций в Java 9 6 ответовЯ изучаю фабричные методы дляImmutable
коллекции. Я вижуSet.of()
метод имеет 10 перегрузок varargs (то же самое дляMap.of()
). Я действительно не могу понять, почему их так много. В конце концов функцияImmutableCollections.SetN<>(elements)
все равно звонят.
В документации я нашел это:
Хотя это вносит некоторую путаницу в API, оно позволяет избежать выделения массивов, инициализации и издержек на сборку мусора, возникающих при вызовах varargs.
Стоит ли путать прирост производительности? Если да, то в идеале это создаст отдельный метод для любогоN
элементы?