Scala常用List列表操作方法示例

网友投稿 630 2023-08-04

Scala常用List列表操作方法示例

Scala常用List列表操作方法示例

把Scala List的几种常见方法梳理汇总如下,日常开发场景基本上够用了。

创建列表

scala> val days = List("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday")

days: List[String] = List(Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday)

创建空列表

scala> val l = Nil

l: scala.collection.immutable.Nil.type = List()

scala> val l = List()

l: List[Nothing] = List()

字符串创建列表

scala> val l = "Hello" :: "Hi" :: "Hah" :: "WOW" :: "WOOW" :: Nil

l: List[StringrEZrVKlc] = List(Hello, Hi, Hah, WOW, WOOW)

用“:::”叠加创建新列表

scala> val wow = l ::: List("WOOOW", "WOOOOW")

wow: List[String] = List(Hello, Hi, Hah, WOW, WOOW, WOOOW, WOOOOW)

通过索引获取列表值

scala> l(3)

res0: String = WOW

获取值长度为3的元素数目

scala> l.count(s => s.length == 3)

res1: Int = 2

返回去掉l头两个元素的新列表

scala> l.drop(2)

res2: List[String] = List(Hah, WOW, WOOW)

scala> l

res3: List[String] = List(Hello, Hi, Hah, WOW, WOOW)

返回去掉l后两个元素的新列表

scala> l.dropRight(2)

res5: List[String] = List(Hello, Hi, Hah)

scala> l

res6: List[String] = List(Hello, Hi, Hah, WOW, WOOW)

判断l是否存在某个元素

scala> l.exists(s => s == "Hah")

res7: Boolean = true

滤出长度为3的元素

scala> l.filter(s => s.length == 3)

res8: List[String] = List(Hah, WOW)

判断所有元素是否以“H”打头

scala> l.forall(s => s.startsWith("H"))

res10: Boolean = false

判断所有元素是否以“H”结尾

scala&grEZrVKlct; l.forall(s => s.endsWith("W"))

res11: Boolean = false

打印每个元素

scala> l.foreach(s => print(s + ' '))

Hello Hi Hah WOW WOOW

取出第一个元素

scala> l.head

res17: String = Hello

取出最后一个元素

scala> l.last

res20: String = WOOW

剔除最后一个元素,生成新列表

scala> l.init

res18: List[String] = List(Hello, Hi, Hah, WOW)

剔除第一个元素,生成新列表

scala> l.tail

res49: List[String] = List(Hi, Hah, WOW, WOOW)

判断列表是否为空

scala> l.isEmpty

res19: Boolean = false

获得列表长度

scala> l.length

res21: Int = 5

修改每个元素,再反转每个元素形成新列表

scala> l.map(s => {val s1 = s + " - 01"; s1.reverse})

res29: List[Shttp://tring] = List(10 - olleH, 10 - iH, 10 - haH, 10 - WOW, 10 - WOOW)

生成用逗号隔http://开的字符串

scala> l.mkString(", ")

res30: String = Hello, Hi, Hah, WOW, WOOW

反序生成新列表

scala> l.reverse

res41: List[String] = List(WOOW, WOW, Hah, Hi, Hello)

按字母递增排序

scala> l.sortWith(_.compareTo(_) < 0)

res48: List[String] = List(Hah, Hello, Hi, WOOW, WOW)

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:浅析scala中map与flatMap的区别
下一篇:scala中的隐式类型转换的实现
相关文章

 发表评论

暂时没有评论,来抢沙发吧~