我有一个字符串列表,例如:
listOf("1", "2", "3", "4", "+", "3")
我想进行连接,以便仅获取数字:"1234"
。我首先尝试使用一个有效的for循环。
但是我想知道Kotlin是否可以用一种漂亮的一行像这样衬砌整个事情:
val myList = listOf("1", "2", "3", "4", "+", "3")
someConcatenationFunction(myList) // returns "1234"
答案 0 :(得分:3)
我发现的解决方案是这个(要放在一个单独的文件中):
fun List<String>.concat() = this.joinToString("") { it }.takeWhile { it.isDigit() }
所以基本上,它的作用是:
joinToString("")
:JoinToString
将列表的内容连接到字符串,""
指定您不希望在连接的字符串中使用任何分隔符。{ it }.takeWhile { it.isDigit() }
:表示从串联列表中,我只需要数字字符。 takeWhile
将停在第一个非数字。到这里开始!现在您可以轻松地做到:
listOf("1", "2", "3", "4", "+", "3").concat() // returns "1234"
答案 1 :(得分:1)
只需使用函数 engine = sqlalchemy.engine.create_engine('mysql://py:123@localhost/py', echo=True)
con = engine.connect()
res = con.execute("insert into user set name = %s", 'A')
连接所有适用于 joinToString()
和 Char
的列表项。
下面是例如。
String
其他例如
val list = listOf("1", "2", "3", "4", "+", "5")
val separator = ","
val string = list.joinToString(separator)
println(string) //output: 1,2,3,4,+,5
答案 2 :(得分:0)
您并没有明确地说过这一点,因此我需要猜测,您只希望在遇到另一个字符串时就连接整数停止。最简单的方法是:
data-toggle="drowndown"