2012-09-01 4 views
7

가변 길이 인수 목록에 기본 인수를 설정할 수 있습니까?기본 인수가있는 가변 길이 인수 목록?

예 :

def foo(args: String*) = args.foreach(println) 

어떻게 args에 대한 기본 인수를 설정하는 방법?

error: a parameter section with a `*'-parameter is not allowed to have default arguments

하지만 당신은 방법 오버로딩과 같은 결과를 얻을 수 있습니다 :

답변

12

번호 당신이하려고하면, 컴파일러는 당신을 말할 것이다

: 여기

class A { 
    def foo(args: String*): Unit = args.foreach(println) 
    def foo(): Unit = foo("A", "B", "C") 
} 

당신이 인수를 제공 할 때입니다

scala> (new A).foo("A", "B") 
A 
B 

다음은 '기본값'입니다.

scala> (new A).foo() 
A 
B 
C 
+0

위대한 솔루션입니다, 감사합니다! –