我正在尝试创建一个获取列表列表(从csv文件中读取)和字符串的方法,并输出包含该字符串的所有数据的列表。
数据示例:
"Joe, 14,1989"
"John, 13,1999"
"Mary, 10, 2000"
我的功能是:
def name(info: List[List[String]], str: String): List[List[String]] =
info.filter(lst =>lst.head.toString == str)
然而,我得到一个空列表作为回报。比较scala中字符串的最佳方法是什么?
答案 0 :(得分:2)
由于您正在调用.head
,因此只会返回第一个元素等于str
的列表。 (调用.toString
也是多余的,因为这些项目已经是字符串了。)
您想要的是info.filter(lst => lst.contains(str))
,或只是info.filter(_.contains(str))
。