Как положить переменную в дженерик-тип?

224
08 ноября 2017, 00:09

Такой код не работает:

public static <T> void doSomething(Class clazz) {
    List<clazz> list = new ArrayList<>();
}

Как можно положить в generic-тип переменную ?

Answer 1

Обычно это делается так:

public static <T> void doSomething(Class<T> clazz) {
    List<T> list = new ArrayList<>();
}
Answer 2

Ещё можно передать не класс, а представителя:

public static <T> void doSomething(T t)
    List<T> list = new ArrayList<>();
}

Создать объект нужного класса можно с помощью reflection.

READ ALSO
Android Studio: не грузит БД SQLite

Android Studio: не грузит БД SQLite

Должные грузиться данные из подключенной БДВместо этого приложение при нажатии на нужный фрагмент вылетает с ошибкой

292
Подключение WebGL

Подключение WebGL

Привет, мне нужно подключить WebGL к браузеру, в лаунчере игры, а я понятия не имею как это сделать

287
Проблема в инициализации branch.io

Проблема в инициализации branch.io

Использую библиотеку branchio для работы с app link

237
Java: заштриховать Hintergrund

Java: заштриховать Hintergrund

Имеется прямоугольник как графический элементВ нем содержится текст, если нарисовать при помощи drawLine самостоятельно линии-штриховки, то эти...

194