kotlin отражение проверить nullable типы
Как я могу проверить, содержит ли переменная KType значение обнуляемого типа kotlin (например, Int?)?
я имею
var type: KType
переменная изKProperty<*>.returnType
и мне нужно определить, равен ли он определенным типам котлина (Int, Long и т. д.). Это работает с:
when (type) {
Int::class.defaultType -> ...
Long::class.defaultType -> ...
else -> ...
}
но это работает только для ненулевых типов, поэтому первая ветвь не соответствует Int? Однако я еще не смог понять, как я могу определить, является ли тип Int? другой, то очевидный, но не такой хороший
type.toString().equals("kotlin.Int?")