我有一个递归的方法。scala中是否有办法根据缓冲区的大小进行突破(如下所示)?例如,当 elementList.size > 5 时爆发的情况?
val elementList = ListBuffer.empty[Book]
@tailrec
def getBooks(elements: List[Element]) {
elements match {
case Nil => info("Reached end of elements list.")
case element :: rest if element.getElementType == ElementType.BOOK => {
elementList.append(element.getBook)
getLooks(rest)
}
case _ => getBooks(elements.tail)
}
}