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