尝试scalaz.NonEmptyList,我尝试了:
scala> import scalaz.NonEmptyList
import scalaz.NonEmptyList
scala> NonEmptyList("5", Nil)
res0: scalaz.NonEmptyList[java.io.Serializable] = NonEmptyList(5, List())
我错误地认为List
是NonEmptyList#apply
的第二个参数(实际上是varargs)。
但是,为什么java.io.Serializable
会显示为类型?
答案 0 :(得分:3)
您构建了一个包含两个项目的列表,String
和Nil
。因此,该列表的类型为NonEmptyList[A]
,其中A
是 String
和Nil
的最低常见超类型,即Serializable
类型{ {1}}。顺便说一句:scala的正常List:List("5",Nil)