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[String] = 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> 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[String] = List(10 - olleH, 10 - iH, 10 - haH, 10 - WOW, 10 - WOOW)

生成用逗号隔开的字符串

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)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Scala入门之List使用详解

    Scala中使用List Scala是函数式风格与面向对象共存的编程语言,方法不应该有副作用是函数风格编程的一个重要的理念.方法唯一的效果应该是计算并返回值,用这种方式工作的好处就是方法之间很少纠缠在一起,因此就更加可靠和可重用.另一个好处(静态类型语言)是传入传出方法的所有东西都被类型检查器检查,因此逻辑错误会更有可能把自己表现为类型错误.把这个函数式编程的哲学应用到对象世界里以为着使对象不可变. 前面一章介绍的Array数组是一个所有对象都共享相同类型的可变序列.比方说Array[Strin

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

    把Scala List的几种常见方法梳理汇总如下,日常开发场景基本上够用了. 创建列表 scala> val days = List("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday") days: List[String] = List(Sunday, Mon

  • Scala基础简介及代码示例

    一.主要内容 Scala中变量的声明与函数定义 Scala中的控制结构 Scala中的数据类型 1:变量声明与函数定义 变量声明:val 和 var ,两者的区别是val声明的变量是不可变的,而var声明的变量可变 带返回值 scala> def max(x:Int,y:Int):Int = { | if(x>y) x | else y | } max: (x: Int, y: Int)Int scala> max(1,2) res5: Int = 2 不带返回值 scala> d

  • Python列表操作方法详解

    本节内容 0.列表常用功能汇总 1.定义列表 2.访问列表中的元素 3.切片 4.追加 5.插入 6.修改 7.拷贝 8.删除 9.扩展 10.统计 11.翻转 12.排序 13.获取下标值 14.清空列表 列表是Python最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 0.列表常用功能汇总 1.定义列表 >>> name=[] #定义空列表 >>> name=['luoahong','chenqun','wenhai','daiqiao','x

  • JavaScript中常用的数组操作方法

    目录 一.concat() 二.join() 三.push() 五.shift() 六.unshift() 七.slice() 八.splice() 九.substring() 和 substr() 十.sort 排序 十一.reverse() 十二.indexOf 与 lastIndexOf 十三.every 对数组 十四.some 十五.filter 十六.map 十七.forEach 数组遍历 1.find(): 2.findIndex(): 3.fill(): 4.copyWithin(

  • IOS展开三级列表效果示例

    效果图如下: #import <UIKit/UIKit.h> @interface AppDelegate : UIResponder <UIApplicationDelegate> @property (strong, nonatomic) UIWindow *window; @end #import "AppDelegate.h" #import "RootViewController.h" @interface AppDelegate

  • PHP常用算法和数据结构示例(必看篇)

    实例如下: </pre><pre name="code" class="php"><?php /** * Created by PhpStorm. * User: qishou * Date: 15-8-2 * Time: 上午9:12 */ header("content-type:text/html;charset=utf-8"); $arr = array(3,5,8,4,9,6,1,7,2); echo im

  • Android ItemDecoration 实现分组索引列表的示例代码

    本文介绍了Android ItemDecoration 实现分组索引列表的示例代码,分享给大家.具体如下: 先来看看效果: 我们要实现的效果主要涉及三个部分: 分组 GroupHeader 分割线 SideBar 前两个部分涉及到一个ItemDecoration类,也是我们接下来的重点,该类是RecyclerView的一个抽象静态内部类,主要作用就是给RecyclerView的ItemView绘制额外的装饰效果,例如给RecyclerView添加分割线. 使用ItemDecoration时需要继

  • Python同步遍历多个列表的示例

    Python的for循环十分灵活,使用for循环我们可以很轻松地遍历一个列表,例如: a_list = ['z', 'c', 1, 5, 'm'] for each in a_list: print(each) 运行结果: 但是,有时遍历一个列表并不能满足我们的需求,在一些特殊的场合,我们可能会需要遍历两个甚至多个列表,例如,有两个列表,第一个列表存放的是人物的姓名,第二个列表存放的是人物的年纪,他们之间的关系是对应的,这时候该怎么办呢? ①使用zip()函数 (推荐) name_list =

  • Python创建数字列表的示例

    [一]range()函数 在python中可以使用range()函数来产生一系列数字 for w in range(1,11): print(w) 输出: 1 2 3 4 5 6 7 8 9 10 #注意:这里的到10就结束了,不包括11 [二]list()函数 如果将range()作为参数传递给list()函数,那么就会将数字以列表的形式输出 num=list(range(1,11)) print(num) 输出: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 使用range

  • JQuery常用简单动画操作方法回顾与总结

    本文实例讲述了JQuery常用简单动画操作方法.分享给大家供大家参考,具体如下: jQuery基础动画回顾 .hide() 隐藏动画 .show() 出现动画 .toggle() 切换显示状态 .slideUp()/Down() 下拉/卷起动画 .slideToggle() 下拉卷起切换 .fadeIn()/Out() 淡入/出动画 .fadeToggle() 淡入淡出切换 .fadeTo() 透明度变化到指定透明度,参数为(duration,opacity) .animate() 控制css动

随机推荐