(数字+“超过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") } 

如果一个Int位于+运算符的左侧,另一个数字位于右侧(更确切地说,是ByteShortInt之一),那么不能将一个String连接到一个IntLongFloatDouble )。

它会以相反的方式工作,因为String实际上有一个采用Int作为其参数的+方法:

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

相反,您可以使用字符串模板 :

 println("$number is more than 5") 

或者,如果你真的不喜欢这些,从一个空字符串(不推荐)开始:

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