列表
Scala 列表类似于数组,它们所有元素的类型都相同,但是它们也有所不同:列表是不可变的,值一旦被定义了就不能改变,其次列表 具有递归的结构(也就是链接表结构)而数组不是。。
1, 创建 list
/**
* 创建list
* 构建列表的2个基本单位: :: 和 Nil*/def createList(): List[String]={//直接创建
var site: List[String] = List("Runnbo", "google", "Baidu")var site2 = "Runnbo" :: ("google" :: ("baidu":: Nil))//空列表
var list1 =Nil//二维列表
var dim1: List[List[Int]] = List(List(1, 2), List(2, 3))var dim2: List[List[Int]] = (1::(2::(3::Nil)))::
(0::(1::(2::(3::(4::Nil)))))::
(3::(3::Nil))::Nil//通过给定的函数创建列表
val mul = List.tabulate(4, 5)(_*_)
site
}
2, 获取list中的值
def getValue(list: List[String]): Unit ={
println(list(0))for (x
println(x)
}
}
3, 列表链接;
/**
* 列表链接*/def concatList(list1: List[String])(list2: List[String]):Unit={//将元素放进 list2中
println(list1(0) :: list2)//将list1 作为一个 元素, 和list2(0) 组成新的list
println(list1:: list2(0):: Nil)//list1 作为一个元素, 放进 list2 中, List(List(Runnbo, google, Baidu), aaa, bbb)
println(list1:: list2)//list拼接
println(list1::: list2)
println(list1.+:("gqwere"))
//使用concat链接 var fruit =List.concat(list1, list2) println(fruit) }
4, list常用操作
/**
* list常用操作*/def userMethod={
val list= List("a", "b", "c", "d", "e"