java - Как вернуться с массивом, содержащим элементы одного типа? - PullRequest
0 голосов
/ 14 апреля 2020

Итак, я работаю над плагином Paperpigot (Minecraft) и у меня есть несколько списков, из которых я генерирую элементы на основе их веса. Сегодня я создал еще один класс, который должен генерировать элементы из списка, основанного на весе, и понял, что я должен сделать для этого метод stati c. Поэтому я подумал, что все элементы в списках должны расширять абстрактный класс «Weighted», который имеет переменную веса и метод getWeight(). Так и с этим.

Я хочу сделать что-то вроде:

public static ArrayList<class ? extends Weighted> generateWeightedRandom(ArrayList<class ? extends Weighted>, int x)

Это сгенерирует сумму x из списка и вернется с ArrayList того же типа, который я ему дал.

Так, например, у меня есть список: ArrayList<Loot> lootList = new ArrayList<>(); // «Лут» расширяет весовые коэффициенты, и позже я звоню generateWeightedRandom(lootList, 6) then i ll get an ArrayList<Loot> (with 6 elements).

Или, если у меня есть ArrayList<Enchant> enchants = new ArrayList<>(); //'Enchat', также расширяет взвешенные и снова я звоню generateWeightedRandom(enchants, 6) then i ll get an ArrayList<Enchant> назад.

Возможно ли это?

...