-
变长参数
传递变长参数只要在参数后加*即可,例如:
def printArgs(args: String *): Unit ={
for(arg <- args){
print(arg+" ");
}
}
但是如果你有一个Array或者List,想直接向printArgs方法传递是不正确的,因为参数类型是String,但是你传递的却是Array或者List。例如:
var args=Array("test","test1","test2");
printArgs(args); //参数不是String 类型
你需要在参数后添加 _* ,这个符号的意思是将Array或者List里的所有元素当作一个序列。例如:
var args=Array("test","test1","test2");
printArgs(args:_*);
网友评论