我正在使用 Scala 并通过将谓词传递给过滤函数来解决某些问题。没什么大不了的,但在谓词中,我使用了对名为 doSearch 的私有函数的调用。
doSearch 方法是作为常规方法调用还是作为“指针”传递给该方法并作为高阶函数调用?
我的基本原理是,将它作为高阶函数传递似乎是唯一的方法,因为 doSearch 是 MyObject 私有的,但也可以从 GlobalSet 内部调用 doSearch,因为调用是从 MyObject 内部执行的,因此可以访问它?
欢迎任何指向信息的指针、建议和网址!
object MyObject {
private def doSearch(text: String, wordList: List[String]): Boolean = {
// do the search
}
val thisSet: MySet = GlobalSet.allElements.filter( elem => doSearch(elem, myList) )
}