Scala中的List
List是长度不可变,内容也不可变的
初始化:
val days = List("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday",1,2,3,4,5,6,7) // 通过apply创建
val sound = "Hello" :: "Hi" :: "Hah" :: "WOW" :: "WOOW" :: Nil // 通过::创建
val days_sound = days ::: sound // 通过:::连接已有的2个list来创建新的
方法名 | 方法作用 |
List() 或者Nil | 空List |
days(1) | 返回第二个元素 |
days.count(s=>s.length==2) | 计算list中的元素长度为2的个数 |
days.drop(2) | 去掉前2个元素后返回新的list,days保持不变 |
days.dropRight(2) | 去掉后2个元素后返回新的list,days保持不变 |
days.exist(s=>s=="Hi") | list中是否含有"Hi"这个串的元素 |
days.filter(s=>s.length==3) | 返回list中元素长度是3的个数 |
days.forall(s=>s.endWith("s")) | 判断所有的元素是不是都是以“s”结尾的 |
days.remove(s=>s.startWith("s")) | 删除列表中以“s”开头的元素 |
days.map(s=>s+"'s ") | 给每个元素后添加's,但是原days不变,其中的函数返回的是单一元素 |
days.head | 返回第一个元素 |
days.flatMap(x=>1 to 10*x) | 注意,使用flatMap的关键点在于其中的函数,其中的函数必须是返回一个GenTraversableOnce,也就是一个seq集合 |