Scala集合的强大功能与使用技巧
1. 集合过滤与选择
在Scala中,集合操作提供了丰富的功能。例如,我们可以定义一个方法 isOdd ,并将其作为参数传递给 filter 方法,Scala会自动将方法提升为函数:
scala> def isOdd(x: Int) = x % 2 == 1
isOdd: (Int)Boolean
scala> List(1,2,3,4,5).filter(isOdd)
res6: List[Int] = List(1, 3, 5)
filter 方法适用于任何类型的集合,比如将字符串转换为字符列表并过滤出数字:
scala> "99 Red Balloons".toList.filter(Character.isDigit)
res9: List[Char] = List(9, 9)
这里Scala编译器将 Character 类的静态方法 isDigit 提升为函数,展示了与Java的互操作性。
另一个有用的方法是 takeWhile ,它会返回所有元素,直到遇到使函数返回 false 的元素。例如,获取字符串中第一个空格之前的所有字符:
超级会员免费看
订阅专栏 解锁全文
105

被折叠的 条评论
为什么被折叠?



