我正在尝试查找角色是否属于字符串。
var s = "abcdef"
var result = s.any('d')
但我无法理解这种语法。来自docs:
fun CharSequence.any(predicate: (Char) -> Boolean): Boolean
如何将谓词传递给函数?
答案 0 :(得分:15)
完整语法:
s.any({ ch -> ch == 'd' })
我们可以做一些简化。
首先,由于lambda参数是最后一个,我们可以将它放在括号之外,并在没有剩余参数的情况下完全省略它们。
其次,对于带有一个参数的lambda函数文字,可以省略参数声明并通过it
名称引用该参数。
因此,简化的等价物将是:
s.any { it == 'd' }