Kotlin-如何将字符串连接到Int值?
一个非常基本的问题,将字符串连接到Int的正确方法是什么Kotlin-如何将字符串连接到Int值?,kotlin,Kotlin,一个非常基本的问题,将字符串连接到Int的正确方法是什么 我是Kotlin的新手,想打印一个整数值,该值前面带有字符串,并获得以下错误消息 for (i in 15 downTo 10){ print(i + " "); //error: None of the following function can be called with the argument supplied: print(i); //It's Working but I need some space after
我是Kotlin的新手,想打印一个
整数
值,该值前面带有字符串,并获得以下错误消息
for (i in 15 downTo 10){
print(i + " "); //error: None of the following function can be called with the argument supplied:
print(i); //It's Working but I need some space after the integer value.
}
预期结果15 14 13 12 11 10直接按字符串:
for (i in 15 downTo 10){
print(i.toString() + " ");
}
Int::toString
方法完成了您需要的任务。而不是显式循环,考虑函数方法如<代码> map < /> >:
(15 downTo 10).map(Int::toString).joinToString { " " }
请注意,
map
部分甚至是冗余的,因为joinToString
可以在内部处理转换。您可以使用kotlin字符串模板:
for (i in 15 downTo 10){
print("$i ");
}
$
dollar–我们将在下面看到的字符串模板中使用dollar符号
for (i in 15 downTo 10){
print("$i ")
}
输出:15 14 13 12 11 10您有几个选项: 1。字符串模板。我认为这是最好的。它的工作原理完全类似于第二个解决方案,但看起来更好,并允许添加一些所需的字符
print("$i")
如果你想添加一些东西
print("$i ")
print("$i - is good")
要添加一些表达式,请将其放在括号中
print("${i + 1} - is better")
2<代码>toString方法,可用于kotlin中的任何对象
print(i.toString())
3。类似Java的解决方案带有连接
print("" + i)
您得到的错误是因为您使用的
+
是整数(由左操作数决定)。整数+
需要2个整数。为了实际使用字符串的+
进行连接,您需要左边的字符串,如“+i+”
也就是说,在Kotlin中,使用字符串模板打印格式化字符串更为惯用:“$i”
但是,如果只想打印中间有空格的整数,可以使用stdlib函数joinToString()
:
您应该使用
$
。您也可以使用+但在您的情况下可能会混淆,因为+has也是一个调用用于求整数和的plus()
方法的运算符
for (i in 15 downTo 10){
print("$i ");
}
使用Kotlin时使用此语法
print($i”)
。谢谢@JeelVankhede,它对我有用;)str
val有什么意义?您在使用分号方面也不一致。
for (i in 15 downTo 10){
print("$i ");
}