Scala中的布尔函数取决于另一种方法

Scala中的布尔函数取决于另一种方法,scala,boolean,Scala,Boolean,我需要编写一个函数'result',如果某个方法B返回空列表,那么方法'result'应该返回true,否则返回false 但输出并非如预期的那样。你知道这个错误吗?谢谢您可以使用isEmpty检查空列表: 或者,您可以在从B返回的列表中进行匹配: 它没有打印所需的结果。函数“B”返回List或Listindex1、index2、Setsomevalues。当函数“B”只返回列表时,我需要使函数“result”返回true,否则返回false。在这种情况下,总是给出令人惊讶的错误。我认为不应该这

我需要编写一个函数'result',如果某个方法B返回空列表,那么方法'result'应该返回true,否则返回false


但输出并非如预期的那样。你知道这个错误吗?谢谢

您可以使用isEmpty检查空列表:

或者,您可以在从B返回的列表中进行匹配:


它没有打印所需的结果。函数“B”返回List或Listindex1、index2、Setsomevalues。当函数“B”只返回列表时,我需要使函数“result”返回true,否则返回false。在这种情况下,总是给出令人惊讶的错误。我认为不应该这样做。请出示一些证据。你能出示函数B吗?你为什么要删除你的原始代码?这是正确的!!我刚刚测试了您的代码,如果B被定义为def B=List,结果将返回true。我认为你的问题在于B,而不是结果。有点挑剔,你的第二个例子可能是case=>…:@是的,很好的观点,有点奇怪,B的结果实际上没有被使用。公平地说,整个练习似乎有点奇怪:我不知道为什么需要“结果”。
def result(): Boolean = ! B().isEmpty
B() match {
    case Nil => puzzle
    case _ => solve(state())
}