Лямбда-функции с подстановочными знаками в Котлине

Я смотрел примеры, представленные Google, и наткнулся на эту строку

private final ArrayMap<Class, Callable<? extends ViewModel>> creators; 

Мне трудно понять, как преобразовать этот Callable<? extends ViewModel> Callable<? extends ViewModel> в лямбда в Котлине

Как мне это сделать?

РЕДАКТИРОВАТЬ:

 class ViewModelFactory(appComponent: AppComponent) : ViewModelProvider.Factory { private val creators: ArrayMap<Class<*>, () -> ViewModel> = ArrayMap() init { creators.put(DashboardViewModel::class.java, { appComponent.getDashboardViewModel() }) } override fun <T : ViewModel?> create(modelClass: Class<T>?): T = creators[modelClass]?.invoke() as T } 

В приведенном выше коде я получаю непроверенное сообщение о листе в моей среде IDE. Есть ли способ избежать этого?

Intereting Posts