1. 字符串列表
// val site:List[String]=List("runoob","google","baidu") val site="runoob"::("google"::("baidu":: Nil)) site: List[java.lang.String] = List("runoob", "google", "baidu")
2. 整形列表
// val nums:List[Int]=List(1,2,3,4) val nums=1::(2::(3::(4::Nil))) nums: List[Int] = List(1, 2, 3, 4)
3. 空列表
// val empty:List[Nothing]=List() val empty=Nil empty: scala.collection.immutable.Nil.type = List()
4. 二维列表
/ val dim:List[List[Int]]=List( // List(1,0,0), // List(0,1,0), // List(0,0,1) // ) val dim=(1::(0::(0::Nil))):: (0::(1::(0::Nil))):: (0::(1::(0::Nil)))::Nil dim: List[List[Int]] = List( List(1, 0, 0), List(0, 1, 0), List(0, 1, 0) )
5. head 返回列表第一个元素,
tail 返回一个列表,包含除了第一元素之外的其他元素
isEmpty 在列表为空时返回true
object Test{ def main(args:Array[String]){ val site="runoob"::("google"::("baidu":: Nil)) val nums =Nil println( "第一网站是 : " + site.head ) println( "最后一个网站是 : " + site.tail ) println( "查看列表 site 是否为空 : " + site.isEmpty ) println( "查看 nums 是否为空 : " + nums.isEmpty ) } } Test.main(Array()) 第一网站是 : runoob 最后一个网站是 : List(google, baidu) 查看列表 site 是否为空 : false 查看 nums 是否为空 : true defined object Test
6.连接列表 ::: 或 List.:::() 或 List.concat()
object Test{ def main(args:Array[String]){ val site1 = "Runoob" :: ("Google" :: ("Baidu" :: Nil)) val site2 = "Facebook" :: ("Taobao" :: Nil) //使用::: var fruit=site1:::site2 println( "site1 ::: site2 : " + fruit ) //使用List.:::() fruit=site1.:::(site2) println( "site1.:::(site2) : " + fruit ) //使用List.concat() fruit=List.concat(site1,site2) println( "List.concat(site1, site2) : " + fruit ) } } Test.main(Array()) site1 ::: site2 : List(Runoob, Google, Baidu, Facebook, Taobao) site1.:::(site2) : List(Facebook, Taobao, Runoob, Google, Baidu) List.concat(site1, site2) : List(Runoob, Google, Baidu, Facebook, Taobao) defined object Test
7. List.fill() 指定重复数量的元素列表
object Test{ def main(args:Array[String]){ val site=List.fill(3)("google") println("site:"+site) val nums=List.fill(10)(2) println("nums:"+nums) }} Test.main(Array()) site:List(google, google, google) nums:List(2, 2, 2, 2, 2, 2, 2, 2, 2, 2) defined object Test
8. List.tabulate() 方法是通过给定的函数来创建列表
第一个参数为元素的数量,第二个参数为指定的函数
object Test { def main(args: Array[String]) { val squares=List.tabulate(6)(n=>n*n) println("一维:"+squares) val mul=List.tabulate(4,5)(_*_) println("多维"+mul) }} Test.main(Array()) 一维:List(0, 1, 4, 9, 16, 25) 多维List(List(0, 0, 0, 0, 0), List(0, 1, 2, 3, 4), List(0, 2, 4, 6, 8), List(0, 3, 6, 9, 12)) defined object Test
原文:https://www.cnblogs.com/hapyygril/p/11649674.html