У меня есть метод утилиты для преобразования varargs типа в массив этого типа - он выглядит так:
public K[] array(K... ks) {
return ks;
}
Случай использования заключается в том, что вместо определения массива при вызове метода, который требует массив, вы можете просто сделать массив (val1, val2, val3).
Однако IntelliJ дает мне предупреждения о загрязнении кучи. Я понимаю, что это значит, но у меня нет большого опыта в отношении специфики, поэтому я хотел бы знать, могу ли я добавить @SafeVarargs и действительно ли этот метод безопасен.
IntelliJ говорит:
Краткое описание проблемы Возможное загрязнение кучи от параметризованного тип vararg в строке 249
Устранение неполадок Сделайте окончательный и аннотированный как @SafeVarargs
K объявляется как параметр типа класса, а также V.