运算符介绍

运算符是一种特殊的符号,用以表示数据的运算、赋值和比较等。

  • 算术运算符
  • 比较运算符(关系运算符)
  • 位运算符
  • 逻辑运算符
  • 赋值运算符

算术运算符

介绍

算术运算符(arithmetic)是对数值类型的变量进行运算的,在Scala程序中使用的非常多。

Scala核心编程_第03章_运算符_运算符

 

 注意:

  1. 对于除号“/”,它的整数除和小数除是有区别的:整数之间做除法时,只保留整数部分而舍弃小数部分。 例如:var x : Int = 10/3 ,结果是 3
  2. 当对一个数取模时,可以等价 a%b=a-a/b*b , 这样我们可以看到取模的一个本质运算(和java 的取模规则一样)。
  3. 注意:Scala中没有++、--操作符,需要通过+=、-=来实现同样的效果

关系运算符(比较运算符)

基本介绍

  1. 关系运算符的结果都是boolean型,也就是要么是true,要么是false
  2. 关系表达式 经常用在 if结构的条件中或循环结构的条件中
  3. 关系运算符的使用和java一样

Scala核心编程_第03章_运算符_运算符_02

位运算符

Scala核心编程_第03章_运算符_scala_03

 

 

逻辑运算符

假定变量 A 为 true,B 为 false

Scala核心编程_第03章_运算符_算术运算符_04

赋值运算符

赋值运算符就是将某个运算后的值,赋给指定的变量。

赋值运算符的分类

Scala核心编程_第03章_运算符_scala_05

 

运算符的特别说明

Scala不支持三目运算符 , 在Scala中需要使用 if–else 的方式实现。
  val num = 5 > 4 ? 5 : 4 //没有
  val num = if (5>4) 5 else 4

运算符优先级

1) 运算符有不同的优先级,所谓优先级就是表达式运算中的运算顺序。如右表,上一行运算符总优先于下一行。
2) 只有单目运算符、赋值运算符是从右向左运算的。
3) 运算符的优先级和Java一样。

小结运算符的优先级:
1.() []
2.单目运算
3.算术运算符
4.移位运算
5.比较运算符(关系运算符)
6.位运算
7.关系运算符
8.赋值运算

 Scala核心编程_第03章_运算符_scala_06

 

大多数人都以为是才智成就了科学家,他们错了,是品格。---爱因斯坦