`
congli
  • 浏览: 15432 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Scala中的下划线到底有多少种应用场景

 
阅读更多
我目前了解的有一下几个用处:


1、作为“通配符”,类似Java中的*。如import scala.math._

2、:_*作为一个整体,告诉编译器你希望将某个参数当作参数序列处理!例如val s = sum(1 to 5:_*)就是将1 to 5当作参数序列处理。

3、指代一个集合中的每个元素。例如我们要在一个Array a中筛出偶数,并乘以2,可以用以下办法:
a.filter(_%2==0).map(2*_)。
又如要对缓冲数组ArrayBuffer b排序,可以这样:
val bSorted = b.sorted(_
4、在元组中,可以用方法_1, _2, _3访问组员。如a._2。其中句点可以用空格替代。

5、使用模式匹配可以用来获取元组的组员,例如
val (first, second, third) = t
但如果不是所有的部件都需要,那么可以在不需要的部件位置上使用_。比如上一例中val (first, second, _) = t

6、还有一点,下划线_代表的是某一类型的默认值。
对于Int来说,它是0。
对于Double来说,它是0.0
对于引用类型,它是null。
分享到:
评论

相关推荐

    scala中文教程(java 平台开发语言 scala 简单教程)

    #### 四、Scala的应用场景 Scala因其独特的特性,在大数据处理、Web开发等领域得到了广泛的应用。例如,Spark框架就是使用Scala开发的,它利用Scala的强大特性实现了高性能的大数据处理能力。 #### 五、学习Scala...

    响应式架构 消息模式Actor实现与Scala.Akka应用集成

    8. 实战案例:分析实际项目中的示例,如何将Akka应用于Web服务、大数据处理或其他并发场景。 通过以上知识点的学习,开发者能够熟练掌握使用Scala和Akka构建响应式架构的方法,进而构建出能够适应现代分布式计算...

    scala + mybatis 数据库查询

    - Scala的静态类型系统和强大的表达能力使其成为构建复杂应用程序的良好选择,而MyBatis以其灵活性和易用性在Java世界中占有一席之地。通过使用Scala的Java互操作性,我们可以无缝地在Scala中使用MyBatis。 - 集成...

    scala sdk scala-2.12.3

    Scala是一种多范式的编程语言,融合了面向对象和函数式编程的特点,它运行在Java虚拟机(JVM)上,能够充分利用Java生态系统的资源。Scala-2.12.3是Scala的一个特定版本,它包含了对Java 8及更高版本的支持,并提供...

    Effective Scala中文版

    了解Actor模型以及如何在Scala中使用Akka,对于构建大规模、高并发的应用至关重要。 6. **特质与多重继承**:Scala的特质提供了一种实现多重继承的方式,避免了传统继承带来的问题。理解特质的使用场景和最佳实践,...

    头歌Scala中集合的使用

    Scala中集合的使用 大学生 1. List 列表的使用 2. Set 集合的使用 3.Map 映射的使用 4. 元组的使用

    Scala中文版

    Scala是一种多范式编程语言,它融合了面向对象和函数式编程的概念,使其在处理大数据、并发和分布式计算等领域表现出色。...学习Scala不仅可以提升个人的技术能力,还有助于在现代技术栈中找到更多的职业机会。

    Scala脚本在分布式计算中的实践与应用

    Scala,作为一种多范式编程语言,以其在JVM上运行的能力、与Java的互操作性以及强大的并发处理能力,在分布式计算中扮演着越来越重要的角色。本文将探讨Scala脚本在分布式计算中的应用,并提供实际的代码示例。 通过...

    Scala语法简明教程

    这些公司在各种场景下应用Scala,包括大数据处理、微服务架构等。此外,Scala还有一些非常流行的生态系统项目,如Akka、Spark、Play! 和 Spray等。 #### Scala基础语法 - **变量声明**: - Scala中声明变量使用`...

    scala3 scala3 scala3 scala3 scala3

    Scala3的发布标志着该语言的进一步成熟,它引入了一系列改进,旨在解决早期版本中的一些痛点,同时保持对现有Scala2代码库的兼容性。 在Scala3中,最重要的变化之一是类型推断的增强。新的Typelevel Scala项目引入...

    Scala_中文学习资料_含Scala_2.7.6_API.rar

    Scala是一种多范式编程语言,它融合了函数式编程和面向对象编程的特性。这个压缩包文件"Scala_中文学习资料_含Scala_2.7.6_API.rar"显然是为那些希望深入理解Scala编程的人准备的,特别是对于中文使用者,因为其中...

    scala 语法参考中文pdf

    Scala是一种多范式编程语言,它融合了面向对象和函数式编程的概念,旨在提供一种统一且高效的编程模型。Scala这个名字是“Scalable Language”的缩写,表明它设计的初衷是为了适应从小规模到大规模的软件开发。 ...

    大数据课程-Scala编程基础-3.Scala面对对象的特性_lk_edit.ppt

    在Scala中,包有两种管理风格。第一种与Java相似,每个源文件对应一个包,包名与源文件的路径可以不一致。第二种风格是通过嵌套来表示层级关系,一个源文件可以声明多个包,子包中的类可以直接访问父包的内容,无需...

    学习scala好的项目

    Scala是一种强大的多范式编程语言,它融合了面向对象和函数式编程的特性,被广泛应用于大数据处理、分布式计算和Web开发等领域。Spark是基于Scala构建的大数据处理框架,其高性能和易用性使得Scala在大数据领域备受...

    Scala Tutorial 中英文对照

    在 Scala 中,单例对象是一种特殊类型的类,它可以被视为只有一个实例的类。这里定义的 `HelloWorld` 类和它的唯一实例具有相同的名字。 2. **主方法**:`def main(args: Array[String])` 定义了一个名为 `main` 的...

    scala 中文教程下载

    - Scala中如何实现这两种模式。 - **第11章:Scala的层级** - Scala类库的基本结构。 - 不同类型的类之间的关系。 - **第12章:特质** - 特质(Trait)的概念。 - 如何使用特质来扩展类的功能。 - **第13章:包...

    scala编程中文pdf

    scala编程 33章 中文pdf Scala编程实战 目录 第1章字符串. 11 第2章数值39 第3章控制结构.60 第4章类和属性.103 第5章方法147 第6章对象170 第7章包和导入.190 第8章特质200 第9章函数式编程214 第10 章集合242 第...

Global site tag (gtag.js) - Google Analytics