Intereting Posts
Недопустимые метаданные, полученные в META-INF при компиляции банды Котлин с помощью Gradle BluetoothSocket не подключается к целевому устройству Как назначить новое значение, если вы устанавливаете setter private в kotlin? kotlin: синтаксис для 2 лямбда-параметра Я пытаюсь играть музыку с SDcard Знак доллара в строках Включая файлы Javascript (не модуль) в Котлин Как скомпилировать код Kotlin-JS с сопрограммами? Класс данных KotlinReflectionInternalError Поплавковый примитив магически становится 0 при использовании для запуска PointF или RectF в Kotlin Android Android ViewPager – Как принудительно удалить все предметы? Как передать класс класса kotlin или экземпляр класса kotlin в качестве аргументов Как получить значение перечисления типа raw из класса enum и строки в kotlin андроид, получивший манифест слияния с ошибкой после обновления до новой версии gradle Производительность функции сборки цепей Kotlin

(число + «Больше 5») Не работает «Ошибка конкатенации»

Я закодировал это, и когда я запустил его, он показывает мне сообщение с проблемой в «+» между переменной «Число» и остальной конкатенацией «больше 5». Вот код

fun main(args: Array<String>) { print("Enter your Number") var number:Int = readLine()!!.toInt() if (number>5) { println(number + "is more than 5") } else if (number==5) { println(number + "is equal than 5") } else { println(number + "is less than 5") } println("Thank You") } 

Вы не можете объединить String в Int таким образом, если Int находится в левой части оператора + , ожидается, что с правой стороны будет другой номер (точнее, один из Byte , Short , Int , Long , Float или Double ).

Это будет работать наоборот, потому что у String действительно есть метод + который принимает Int как его параметр:

 println("This is a number: " + number) 

Вместо этого вы можете использовать строковые шаблоны :

 println("$number is more than 5") 

Или, если вам это очень не нравятся, начните с пустой строки (не рекомендуется):

 println("" + number + " is more than 5")