2014-04-30 5 views
3

스칼라 패턴 매칭에서 +와 + : 연산자에 대해 혼란스러워합니다.스칼라 패턴 매칭 : + + : 연산자

내가 한 내가 여기 실종 무엇 코드

error: not found: value +: 
error: not found: value head 
error: not found: value +: 
error: not found: value tail 

을 실행할 때 목록

object Solution { 

    def last[A](seq: Seq[A]) : A = seq match { 
     case head +: Nil => head 
     case head +: tail => last(tail) 
    } 

    def main(args: Array[String]) { 
     println("1: " + last(List(1, 2, 3, 4))) 
    } 
} 

의 마지막 값을 반환하지만 약간의 오차가 받아야하는 다음 함수?

편집 : 나는 당신이 +:를 검색 할 수 있도록

+0

"case head :: Nil => ..." –

+3

게시 한 코드가 나를 위해 작동 –

+0

@EugeneZhulenev 아니,'::'는'List'에만 해당됩니다. 'Seq '에는'+ :'이 필요합니다. – wingedsubmariner

답변