Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/svn/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala—声明一个可以容纳任何内容的Java列表_Java_Scala_Twirl - Fatal编程技术网

Scala—声明一个可以容纳任何内容的Java列表

Scala—声明一个可以容纳任何内容的Java列表,java,scala,twirl,Java,Scala,Twirl,在Scala中,如何声明可以容纳任何内容的Java列表 Scala表示,如果我尝试在列表中放入元组,列表[对象]就会变得不安 type mismatch; found : java.util.List[Triple[Integer,Integer, Integer]] required: java.util.List[Object] Note: Triple[Integer,Integer, Integer] <: Object, but Java-defined trait

在Scala中,如何声明可以容纳任何内容的Java列表

Scala表示,如果我尝试在列表中放入元组,列表[对象]就会变得不安

type mismatch; found :     java.util.List[Triple[Integer,Integer, Integer]] required: 
java.util.List[Object] Note: Triple[Integer,Integer, Integer] <: Object, but Java-defined 
trait List is invariant in type E. You may wish to investigate a wildcard type 
such as `_ <: Object`. (SLS 3.2.10)

使用Scala而不是Java集合,例如Scala.collection.Seq[Any]。如果需要可变,请查看scala.collection.mutable


如果坚持使用Java集合,可以尝试field:List[;嗯,我不想这样做,因为我正在使用Java的play framework,所以发送一个Java列表-你也没有真正回答这个问题!抱歉-在Scala中,我被如何声明一个包含任何内容的列表弄糊涂了。我想你需要一个包含任何内容的列表,在Scala中,编译器说你可能希望研究一个通配符类型,例如我认为您没有显示产生实际错误的代码。
@import java.util.List;

@(field:List[Object], min:Int=1)(f: Object, Int) => Html)
@{
    (0 until math.max(if (field.isEmpty) 0 else field.size, min))
        .map(i => f(field.get(i),i))
}
scala> val t = Tuple3[Int,Int,Int](1,2,3)
t: (Int, Int, Int) = (1,2,3)

scala> val listAny: Seq[Any] = Seq[Any](t,t,5,"happy now?")
listAny: Seq[Any] = List((1,2,3), (1,2,3), 5, happy now?)