一天学完spark的Scala基础语法教程二、运算符与分支语句(idea版本)

举报
红目香薰 发表于 2022/01/27 16:07:05 2022/01/27
【摘要】 ​📋前言📋💝博客主页:红目香薰_CSDN博客-大数据,计算机理论,MySQL领域博主💝✍本文由在下【红目香薰】原创🤗2022年最大愿望:【服务百万技术人次】🤗💝初始环境地址:【spark环境搭建(idea版本)_红目香薰-CSDN博客】💝环境需求环境:win10开发工具:IntelliJ IDEA 2021.2maven版本:3.6.3目录📋前言📋环境需求Scala 运算...

📋前言📋

💝博客主页:红目香薰_CSDN博客-大数据,计算机理论,MySQL领域博主💝

✍本文由在下【红目香薰】原创

🤗2022年最大愿望:【服务百万技术人次】🤗

💝初始环境地址:【spark环境搭建(idea版本)_红目香薰-CSDN博客】💝


环境需求

环境:win10

开发工具:IntelliJ IDEA 2021.2

maven版本:3.6.3

目录

📋前言📋

环境需求

Scala 运算符

算术运算符

关系运算符

逻辑运算符

赋值运算符

运算符优先级

Scala if else分支 语句

if 语句

语法

if...else 语句

语法

if...else if...else 语句

语法

总结


创建测试类【day1/demo2.scalc】 ,类型选择Object


Scala 运算符

一个运算符是一个符号,用于告诉编译器来执行指定的数学运算和逻辑运算。

Scala 含有丰富的内置运算符,包括以下几种类型:

  • 算术运算符

  • 关系运算符

  • 逻辑运算符

  • 位运算符

  • 赋值运算符

接下来我们将为大家详细介绍以上各种运算符的应用。

算术运算符

下表列出了 Scala 支持的算术运算符。

假定变量 A 为 10,B 为 20:

运算符 描述 实例
+ 加号 A + B 运算结果为 30
- 减号 A - B 运算结果为 -10
* 乘号 A * B 运算结果为 200
/ 除号 B / A 运算结果为 2
% 取余 B % A 运算结果为 0

实例

package day1

object demo2 {
  def main(args: Array[String]) {
    var a = 5;
    var b = 6;
    var c = 7;
    var d = 8;
    println("a + b = " + (a + b) );
    println("a - b = " + (a - b) );
    println("a * b = " + (a * b) );
    println("b / a = " + (b / a) );
    println("b % a = " + (b % a) );
    println("c % a = " + (c % a) );

  }
}

关系运算符

下表列出了 Scala 支持的关系运算符。

假定变量 A 为 10,B 为 20:

运算符 描述 实例
== 等于 (A == B) 运算结果为 false
!= 不等于 (A != B) 运算结果为 true
> 大于 (A > B) 运算结果为 false
< 小于 (A < B) 运算结果为 true
>= 大于等于 (A >= B) 运算结果为 false
<= 小于等于 (A <= B) 运算结果为 true

实例

package day1

object demo2 {
  def main(args: Array[String]) {
    var a = 5;
    var b = 6;
    println("a == b = " + (a == b) );
    println("a != b = " + (a != b) );
    println("a > b = " + (a > b) );
    println("a < b = " + (a < b) );
    println("b >= a = " + (b >= a) );
    println("b <= a = " + (b <= a) );

  }
}

逻辑运算符

下表列出了 Scala 支持的逻辑运算符。

假定变量 A 为 1,B 为 0:

运算符 描述 实例
&& 逻辑与 (A && B) 运算结果为 false
|| 逻辑或 (A || B) 运算结果为 true
! 逻辑非 !(A && B) 运算结果为 true

实例

package day1

object demo2 {
  def main(args: Array[String]) {
    var a = true;
    var b = false;

    println("a && b = " + (a&&b) );

    println("a || b = " + (a||b) );

    println("!(a && b) = " + !(a && b) );

  }
}

赋值运算符

以下列出了 Scala 语言支持的赋值运算符:

运算符 描述 实例
= 简单的赋值运算,指定右边操作数赋值给左边的操作数。 C = A + B 将 A + B 的运算结果赋值给 C
+= 相加后再赋值,将左右两边的操作数相加后再赋值给左边的操作数。 C += A 相当于 C = C + A
-= 相减后再赋值,将左右两边的操作数相减后再赋值给左边的操作数。 C -= A 相当于 C = C - A
*= 相乘后再赋值,将左右两边的操作数相乘后再赋值给左边的操作数。 C *= A 相当于 C = C * A
/= 相除后再赋值,将左右两边的操作数相除后再赋值给左边的操作数。 C /= A 相当于 C = C / A
%= 求余后再赋值,将左右两边的操作数求余后再赋值给左边的操作数。 C %= A is equivalent to C = C % A
<<= 按位左移后再赋值 C <<= 2 相当于 C = C << 2
>>= 按位右移后再赋值 C >>= 2 相当于 C = C >> 2
&= 按位与运算后赋值 C &= 2 相当于 C = C & 2
^= 按位异或运算符后再赋值 C ^= 2 相当于 C = C ^ 2
|= 按位或运算后再赋值 C |= 2 相当于 C = C | 2

实例

package day1

object demo2 {
  def main(args: Array[String]) {
    var a = 5;
    var b = 6;
    var c = 0;

    c = a + b;
    println("c = a + b  = " + c );

    c += a ;
    println("c += a  = " + c );

    c -= a ;
    println("c -= a = " + c );

    c *= a ;
    println("c *= a = " + c );

    a = 10;
    c = 15;
    c /= a ;
    println("c /= a  = " + c );

    a = 10;
    c = 15;
    c %= a ;
    println("c %= a  = " + c );

    c <<= 2 ;
    println("c <<= 2  = " + c );

    c >>= 2 ;
    println("c >>= 2  = " + c );

    c >>= a ;
    println("c >>= a  = " + c );

    c &= a ;
    println("c &= 2  = " + c );

    c ^= a ;
    println("c ^= a  = " + c );

    c |= a ;
    println("c |= a  = " + c );
  }
}

运算符优先级

实例:先算乘除,后算加减。括号最先看。

查看以下表格,优先级从上到下依次递减,最上面具有最高的优先级,逗号操作符具有最低的优先级。

类别 运算符 关联性
1 () [] 左到右
2 ! ~ 右到左
3 * / % 左到右
4 + - 左到右
5 >> >>> << 左到右
6 > >= < <= 左到右
7 == != 左到右
8 & 左到右
9 ^ 左到右
10 | 左到右
11 && 左到右
12 || 左到右
13 = += -= *= /= %= >>= <<= &= ^= |= 右到左
14 , 左到右

Scala if else分支 语句

if else语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。

可以通过下图来简单了解条件语句的执行过程:

if 语句

if 语句有布尔表达式及之后的语句块组成。

语法

if 语句的语法格式如下:

package day1

object demo2 {
  def main(args: Array[String]) {
    var isf=true;
    if(isf)
    {
      // 如果布尔表达式为 true 则执行该语句块
      print("is true");
    }
  }
}


if...else 语句

if 语句后可以紧跟 else 语句,else 内的语句块可以在布尔表达式为 false 的时候执行。

语法

if...else 的语法格式如下:

package day1

object demo2 {
  def main(args: Array[String]) {
    var isf=true;
    if(isf)
    {
      // 如果布尔表达式为 true 则执行该语句块
      print("is true");
    }else {
      print("is false");
    }
  }
}

if...else if...else 语句

if 语句后可以紧跟 else if...else 语句,在多个条件判断语句的情况下很有用。

语法

if...else if...else 语法格式如下:

package day1

object demo2 {
  def main(args: Array[String]) {
   var i=100;
    if(i>90&i<=100){
      print("优秀");
    }else if(i>=80){
      print("良好");
    }else if(i>=70){
      print("一般");
    }else if(i>=60){
      print("及格");
    }else{
      print("不及格");
    }
  }
}

总结

到这里有关spark的Scala基础语法教程二、运算符与分支语句(idea版本)就结束了

希望能对大家有所帮助。

欢迎一键三连,谢谢。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。