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

【Scala一】Scala各种符号的含义

 
阅读更多
  • :::

  • ::

:::运算符

:::(三个冒号)表示List的连接操作,比如:

 

val a = List(1, 2)
val b = List(3, 4)
val c = a ::: b

 

 其中a,b保持不变,a和b连接产生一个新表List(1,2,3,4),而不是在a上面做add操作。
Scala中的List不同于Java的List,Java声明final List javaList,表示javaList一旦初始化,那么不能再为它赋值,但是它其中的元素可以变化,
 
 

::运算符

 

::(两个冒号)表示普通元素与List的连接操作,比如:

 

val a = 1
val b = List(3, 4)
val c = 1 :: b

 

则c的结果是List(1,3,4),需要注意的是,1:: b操作,::是右侧对象的方法,即它是b对象的方法,而::左侧的运算数是::方法的参数,所以1::b的含义是b.::(1)

 

+ - * / %运算符

 

在Scala中,+,-,*,/都是函数,比如 1+2,实质上是对象1上调用+函数,传入的参数是2,等价于(1).+(2)

 

 

=>

 

_N(下划线数字)

 

 

val pair = (99, "Luftballons")
println(pair._1)
println(pair._2)

 

_N用于访问元组的第N个元素(N从1开始算起),元组不同于List或者Array,元组(Tuple)中的元素可以不同

 

->

->方法是所有Scala对象都有的方法,比如A->B,->方法调用的结果是返回一个二元的元组(A,B)

 

 

<-

 

def printArgs(args: Array[String]): Unit = {
   for (arg <- args) //表示什么含义,<-应该是一个函数,这个函数是哪个对象调用的?
   println(arg)
}

 

 

 Scala方法定义语法

 

 

 

如果函数体中的语句是一个,那么可以将包着方法体的{}省略,如:

 

def max(x :Int, y :Int) :Int = if (x > y) x else y;

 

 

 <- 运算符

 <-用于for循环中,如下所示

 

for (A <- B) {
   println(A)
}

 

<-用于遍历集合对象(可遍历对象)B,在每次遍历的过程中,生成一个新的对象A,这个A是val,而不是var,然后对循环体中对A进行处理,<-在Scala中称为generator。 不需要显式的指定A的类型,因为Scala使用自动推导的方式根据B的元素类型得出A的类型

 

 

 

 

 

 

 

 

 

 

 

  • 大小: 27 KB
分享到:
评论

相关推荐

    scala中常用特殊符号详解

    Scala是一种强大的编程语言,它提供了多种特殊符号来简化编程工作。在本节中,我们将详细介绍Scala中常用的特殊符号。 1. =&gt;符号:匿名函数 在Scala中,=&gt;符号用于定义匿名函数。匿名函数是一种没有名称的函数,...

    Scala函数式编程

    5 各种重载的符号使用 之前读过 programming in scala,对语言的整体还停留在: 1 scala用起来比java更灵活 2 强大的collection,可以更加方便的处理collection类的数据 3 不同于java的并行处理方法,有点像c的...

    Scala下载安装教程

    Scala 是一种基于 Java 虚拟机(JVM)的编程语言,它提供了强大的功能和灵活的语法,使其广泛应用于大数据、机器学习、数据科学等领域。本教程旨在指导用户从零开始下载和安装 Scala 环境,包括 JDK、Scala 和 IDEA...

    Scala详细总结(精辟版++)

    Scala提供了各种控制结构,如`if`、`for`、`while`循环等。其中,`for`循环支持多种迭代方式,可以实现复杂的迭代逻辑。 #### 函数 Scala中的函数是非常重要的组成部分,可以接受多个参数,并且支持默认参数值、可...

    scala习题精选100道附带解析

    ### Scala习题精选知识点解析 #### 1. 关于与Scala进行交互的基本方式REPL的说明 - **知识点概述**:REPL(Read-Eval-Print Loop)是一种交互式的编程环境,用户可以在其中输入代码,系统立即执行并显示结果。在...

    Scala语言规范.docx

    如果没有特别说明,对Scala符号的描述通常是指Scala模式。 - **十六进制Unicode转义**:在Scala模式中,十六进制Unicode转义字符会被对应的Unicode字符替换。 - **标识符**:Scala支持三种类型的标识符构造方式,...

    scala中文版

    Scala的基本类型包括整数、浮点数、字符、字符串、符号和布尔类型。这些基本类型支持广泛的操作符和方法,例如数学运算、关系和逻辑操作、位操作符、对象相等性和操作符的优先级和关联性。此外,Scala还提供了一种...

    spark+scala学习

    #### 一、Scala语言基础 **1. Scala语言简介** Scala是一种融合了面向对象编程与函数式编程特性的现代编程语言。它旨在简化编程,提供更简洁、强大的代码编写方式。Scala运行在Java平台上(即Java虚拟机),这意味...

    IDEA中Scala官方插件

    Scala是一种多范式编程语言,它融合了面向对象和函数式编程的概念,为开发者提供了强大的工具来创建高效、可维护的代码。在Java平台上运行,Scala能够充分利用Java虚拟机(JVM)的优势,同时也支持现代编程范式,如...

    scala的操作笔记

    Scala支持各种循环结构,包括`for`循环和`while`循环。其中,`for`循环支持更高级的迭代方式,例如模式匹配迭代。 ##### 4.6 调用方法和函数 Scala中的方法调用通常遵循传统的调用方式。而函数则是可以传递给其他...

    scala编程基础

    Scala支持各种内置类型,如整型(`Int`)、浮点型(`Double`)、字符型(`Char`)等。 **条件表达式**: Scala支持传统的`if-else`结构,同时也支持使用模式匹配(`match-case`)进行更复杂的条件判断。 **块表达式**: ...

    Scala_Scala编程

    在Scala的基本类型和操作方面,文档介绍了诸如整数、浮点数、字符、字符串、符号和布尔值等基本类型。此外,还包括了操作符和方法、数学运算、关系和逻辑操作、位操作符、对象相等性和操作符的优先级等内容。这些...

    scala参考手册 必看

    Scala是一种强大的多范式编程语言,它融合了面向对象和函数式编程的特点。这份"Scala参考手册"是学习和理解Scala语法与特性的关键资源。手册详细介绍了Scala的各个方面,包括其独特的词汇结构、标识符、类型系统以及...

    1、scala面试题(25问).pdf

    Scala语言中的模式匹配包括了一系列的备选项,每个替代项以关键字大写为单位,每个替代方案包括一个模式或多个表达式,如果匹配将会进行计算,箭头符号=&gt;将模式与表达式分离。 5. case class和class的区别 Case ...

    Scala语言规范版本:2.7

    Scala是一种现代化的编程语言,它被设计为能够同时支持面向对象编程和函数式编程范式。其名字来源于“可伸缩的语言”(Scalable Language),意在强调其高度的伸缩性和灵活性。作为一门纯面向对象的语言,Scala中的...

    Scala程序设计(第2版)

    5.7 Scala内置的各种隐式 139 5.8 合理使用隐式 146 5.9 本章回顾与下一章提要 146 第6章 Scala函数式编程 147 6.1 什么是函数式编程 148 6.1.1 数学中的函数 148 6.1.2 不可变变量 149 6.2 ...

    表情符号:在Scala中使用Unicode表情符号的最简单方法

    `EmojiScala`是一个Scala库,它提供了方便的方法来处理和展示Unicode表情符号。使用这个库,你可以轻松地查找、插入和解析表情符号。首先,需要将库添加到你的项目依赖中,然后就可以利用其提供的API来工作。例如,...

    spark开发基础之Scala快餐.pdf

    关于Scala符号的理解,Scala语言中存在着一些特有的符号,这些符号对于初学者而言可能感到陌生,但它们在Scala编程中扮演着重要的角色。 , -&gt;, =&gt;, Int=, _ 这些符号在Scala中有特定的用途。例如: 1. 通常用在for...

    Scala 集合数据操作示例

    在Scala中,集合操作通常通过方法调用来实现,但也可以使用一些特殊的符号作为操作符。下面列举了一些常用的集合操作符: 1. **`++++`**: 此操作符用于将两个`GenTraversableOnce`类型的集合连接在一起,形成一个新...

Global site tag (gtag.js) - Google Analytics