为什么scala将Seq转换为List?
发布时间:2020-12-16 08:50:11 所属栏目:安全 来源:网络整理
导读:val a:Seq[Integer] = Seq(3,4)a: Seq[Integer] = List(3,4) 如果Seq只是一个特征,为什么编译器/ REPL接受它,并且它的行为与许多其他特征甚至抽象类的行为相同? 解决方法 它没有转换任何东西. Seq是一个特性,你无法真正实例化它,只能将它混合到某个类中. 由
> val a:Seq[Integer] = Seq(3,4) a: Seq[Integer] = List(3,4) 如果Seq只是一个特征,为什么编译器/ REPL接受它,并且它的行为与许多其他特征甚至抽象类的行为相同? 解决方法
它没有转换任何东西.
Seq是一个特性,你无法真正实例化它,只能将它混合到某个类中. 由于Seq伴侣对象的apply方法必须返回一些具体的类实例(混合在Seq trait中),它返回一个似乎是合理默认值的List. 这可能有用的一种情况是,当你需要一些Seq实例时,却不关心实现,也没有时间查看类型层次结构来找到一个实现Seq的合适类. Seq(3,4)保证给你一些服从Seq合同的东西. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |