Я только изучаю Kotlin как забавный сайд-проект для Project Euler.Я только начал буквально 5 минут назад, в IntelliJ IDEA.
У меня есть этот код:
fun Number.isMultipleOf(n: Number): Boolean {
return this % n == 0
}
fun main(args: Array<String>){
println(10.isMultipleOf(5))
}
Ошибка компиляции такая:
Kotlin: Unresolved reference. None of the following candidates is applicable because of receiver type mismatch:
@Deprecated @InlineOnly public inline operator fun BigDecimal.mod(other: BigDecimal): BigDecimal defined in kotlin
I'mопыт работы с Java, Python, C ++ и Swift, поэтому я подумал, что Kotlin не должен быть такой большой проблемой.Но WTF - это «тип приемника»?
Как я могу исправить эту ошибку компиляции, одновременно получая желаемую функциональность из расширения класса Number
?