Scala 中 :: 和 ::: 有什么区别 [英] What's the difference between :: and ::: in Scala

查看:72
本文介绍了Scala 中 :: 和 ::: 有什么区别的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

val list1 = List(1,2)
val list2 = List(3,4)

然后

list1::list2 returns:

List[Any] = List(List(1, 2), 3, 4)

list1:::list2 returns:

List[Int] = List(1, 2, 3, 4)

我看到书中写道,当使用 :: 时,它也会导致 List[Int] = List(1, 2, 3, 4).我的 Scala 版本是 2.9.

I saw the book writes that when use :: it also results List[Int] = List(1, 2, 3, 4). My Scala version is 2.9.

推荐答案

:: 前置单个项目,而 ::: 前置一个完整列表.所以,如果你把一个 List 放在 :: 前面,它会被当作一个项目,这会导致一个嵌套结构.

:: prepends a single item whereas ::: prepends a complete list. So, if you put a List in front of :: it is taken as one item, which results in a nested structure.

这篇关于Scala 中 :: 和 ::: 有什么区别的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆