You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为Kotlin的filter方法编写搜索谓词实现搜索功能?

Kotlin搜索栏过滤谓词实现

要实现你需要的搜索匹配,直接在filter的lambda里用contains方法检查列表元素是否包含搜索关键词就行:

val searchOne = "Chocolate"
val result = listOf("Caramel", "Chocolate", "White Chocolate").filter { 
    it.contains(searchOne) 
}
// 结果为 ["Chocolate", "White Chocolate"]

如果要让搜索不区分大小写(更贴合实际搜索栏的使用场景),给contains加上ignoreCase = true参数即可:

val searchOne = "chocolate" // 小写输入
val result = listOf("Caramel", "Chocolate", "White Chocolate").filter { 
    it.contains(searchOne, ignoreCase = true) 
}
// 依然能得到正确匹配结果

简单说明:

  • it是Kotlin lambda默认的单个参数名,代表列表中的每一个元素
  • contains方法会判断当前元素是否包含指定搜索字符串,返回布尔值,filter会保留返回true的元素

内容的提问来源于stack exchange,提问作者Darwin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 03:35:25