Scala 错误:未找到:值:::
我可以创建如下列表:Scala 错误:未找到:值:::,scala,compiler-errors,pattern-matching,Scala,Compiler Errors,Pattern Matching,我可以创建如下列表: val value = List(1) ::: 2 :: List(3) value match { case a ::: b :: c => (a, b, c) } 现在我试着像这样分解这个列表: val value = List(1) ::: 2 :: List(3) value match { case a ::: b :: c => (a, b, c) } 但是我得到错误:未找到:值:: 为什么我会犯这个错误。为什么这个模式不起作用,我应该用什么
val value = List(1) ::: 2 :: List(3)
value match { case a ::: b :: c => (a, b, c) }
现在我试着像这样分解这个列表:
val value = List(1) ::: 2 :: List(3)
value match { case a ::: b :: c => (a, b, c) }
但是我得到错误:未找到:值::
为什么我会犯这个错误。为什么这个模式不起作用,我应该用什么来代替呢?假设你有
val xs = List(1, 2, 3, 4)
假设有一个提取器对象可以提取集合前缀。应该匹配什么
case a ::: b :: c => (a, b, c)
是(选择所有适用项)
(列表(1,2,3,4,Nil)
(列表(1,2,3,4))
(列表(1,2,3,4))
(无,1,列表(2,3,4))
value match { case a :: b :: c => (List(a), b, c) }
如果您知道确切的列表大小(3个元素),您也可以通过这种方式进行匹配:
值匹配{案例列表(a,b,c)=>(a,b,c)}