Size: a a a

Kotlin Community

2020 May 21

IO

Iaroslav Orlov in Kotlin Community
либо можете использовать что-то такое:
fun <T> compare(a: T, b: T) where T : Comparable<T>, Number
источник

VP

Vladimir Petrakovich in Kotlin Community
Тут надо в конкретной ситуации смотреть - преобразовывать в Double, BigDecimal или падать, так как там что-то совсем левое
источник

IO

Iaroslav Orlov in Kotlin Community
а, стоп
источник

IO

Iaroslav Orlov in Kotlin Community
вам нужно сравнивать Number'ы разных типов?
источник

AN

Alexander Nozik in Kotlin Community
Iaroslav Orlov
вам нужно сравнивать Number'ы разных типов?
оно в общем случае не реализуется.
источник

IO

Iaroslav Orlov in Kotlin Community
источник

IO

Iaroslav Orlov in Kotlin Community
Alexander Nozik
оно в общем случае не реализуется.
ну, если 2 инстанса одного типа, то хватит дженериков
источник

AN

Alexander Nozik in Kotlin Community
Iaroslav Orlov
ну, если 2 инстанса одного типа, то хватит дженериков
Если одного, то ничего писать не надо
источник

IO

Iaroslav Orlov in Kotlin Community
если разные типы, то можно поплакать о том, что нельзя просто закастить к параметру шаблона, как в плюсах :D
источник

Д

Дмитрий in Kotlin Community
fun <T : Number> T.isBetween(minValue: T, maxValue: T): Boolean

вот такая функция у меня есть
источник

Д

Дмитрий in Kotlin Community
и без проверки типа ничего не придумывается
источник

IO

Iaroslav Orlov in Kotlin Community
а, тогда вам подходит баунд выше
источник

IO

Iaroslav Orlov in Kotlin Community
where T : Comparable<T>, Number
источник

AN

Alexander Nozik in Kotlin Community
Iaroslav Orlov
where T : Comparable<T>, Number
тут Number не нужен
источник

IO

Iaroslav Orlov in Kotlin Community
ну, мало ли
источник

IO

Iaroslav Orlov in Kotlin Community
во-первых, это может по смыслу подходить только для чисел, во-вторых, возможно там что-то из Number'а таки используется
источник

VP

Vladimir Petrakovich in Kotlin Community
Дмитрий
fun <T : Number> T.isBetween(minValue: T, maxValue: T): Boolean

вот такая функция у меня есть
Возможно, вам подойдёт value in minValue..maxValue
источник

IO

Iaroslav Orlov in Kotlin Community
не факт
источник

IO

Iaroslav Orlov in Kotlin Community
rangeTo - это тоже оператор, который определяется конкретно у каждого числового типа
источник

AN

Alexander Nozik in Kotlin Community
Iaroslav Orlov
rangeTo - это тоже оператор, который определяется конкретно у каждого числового типа
не обязательно числового
источник