0
我有一个函数的一般像这样:
@import java.util.List;
@(field:List[_], min:Int=1)(f: (_, Int) => Html)
@{
(0 until math.max(if (field.isEmpty) 0 else field.size, min))
.map(i => f(field.get(i),i))
}
当我运行这段代码,我得到这个真的很无益的错误信息:
type mismatch; found : _$1 required: _$2
我不知道这是什么意思,但错误似乎与field.get(i)
- 任何想法如何解决这个问题?
'_ $ 1'和'_ $ 2'是编译器为您定义为'List [_]'和'(_,Int)=> Html'的通配符的存在类型命名。你得到一个错误,因为它们不一样,但是......你在做什么?通配符类型参数的功能没有多大意义。即使使用'Any'也会更好,但很难理解为什么你会忽略这种类型。 –