Scala基础语法入门(四)Scala流程控制之分支控制

Scala基础语法入门(四)Scala流程控制之分支控制,第1张

🙆‍♂️🙆‍♂️ 写在前面

​🏠​ 个人主页:csdn春和
📚 推荐专栏:更多专栏尽在主页!
 JavaWeb专栏(从入门到实战超详细!!!)
 SSM专栏 (更新中…)
​📖​ 本期文章:Scala基础语法入门(四)Scala流程控制之分支控制
如果对您有帮助还请三连支持,定会一 一回访!🙋🏻‍♂️


📌本文目录
  • Scala流程控制之分支控制
    • 1、单分支
    • 2、双分支
    • 3、多分支
    • 4、分支控制细节
    • 5、Scala中有三元运算符吗?
    • 6、嵌套分支

Scala流程控制之分支控制

同java一样 分支控制分为单分支 双分支 多分支

1、单分支
if(条件表达式){
    代码块
}

🏀 案例:一个篮球员完成花式扣篮,请输入您的打分,分数小于6 则输出一句话

// 1、单分支
println("请打分:")
val score: Int = StdIn.readInt()

if (score < 6){
  println("还得练!")
}
2、双分支
if(条件表示){
    代码块1
}else{
    代码块2
}

🏀 案例:一个篮球员完成花式扣篮,请输入您的打分,分数小于6 则输出一句话,分数大于=6 输出另一句话

// 1、单分支
 println("请打分:")
 val score: Int = StdIn.readInt
 // 双分支
 if (score < 6){
   println("还得练!")
 }else{
   print("还不错!")
 }
3、多分支
if(条件表示){
    代码块1
}
else if{
    代码块2
}
else{
    代码块3
}

🏀 案例:一个篮球员完成花式扣篮,请输入您的打分,分数小于6 则输出一句话,分数大于=6小于9 输出另一句话 分数大于= 9 输出另外一句话

// 多分支
if (score < 6){
  println("还得练!")
}else if(score >= 6 && score < 9){
  print("还不错!")
}else if (score >= 9 && score <= 10){
  println("太棒了!")
}else{
  print("您输入的分数超过范围!")
}

4、分支控制细节

1、Scala中 fi else语句其实是有返回值的,具体返回值取决于满足条件的代码体的最后一行内容。

由于if语句判断会得到一个结果 那么我们将这个结果赋值给一个变量可不可以呢?

Scala 中返回值类型不一致,取它们共同的祖先类型

 Scala为强类型语言,在执行代码之前就需要确定类型,在执行之前你不知道会返回的是String 也有可能没有返回值 那么就是Unit 所以必须是String 和Unit的父类型 那么就是Any 超类

❓ 好我们再来看下面的代码:

❓ 再看看这段代码:

❓ 那么如果有一个是null呢?

5、Scala中有三元运算符吗?

回顾java中的三元运算符

public class JavaTest4 {
    public static void main(String[] args) {

        // java中的三元运算符  条件表达式 ? 值1 : 值2 ;  如果表达式成立则取值1 否则取值2
        // 比较出三个数中的最大值

        int a = 10;
        int b = 19;
        int c = 12;

        int _max = a > b ? a : b;
        int max = _max > c ? _max : c;

        System.out.println(max);

    }
}

那么Scala中有没有三元运算符?三元运算符的本质其实也是分支结构,在Scala中用if else代替三元运算符

def main(args: Array[String]): Unit = {

  // Scala中使用if else代替三元运算符

  val age = 20

  val res = if (age < 18) "未成年" else "成年"

  println(res)

}
6、嵌套分支

在一个分支结构中又完整的嵌套了另一个完整的分支结构,里面的分支的结构称为内层。 分支外面的分支结构称为外层分支。嵌套分支不要超过 3 层。

需求: 输入一个人的年龄,根据年龄判断他是未成年还是成年人,成年又分为青年、中年、老年

def main(args: Array[String]): Unit = {

  // Scala中的 嵌套分支

  println("please input your age:")
  val age = StdIn.readInt()

  if (age < 18){
    println("未成年")
  }else{
    if (age>= 18 && age <30){
      println("青年")
    }else if (age >= 30 && age < 50){
      println("中年")
    }else{
      println("老年")
    }
  }

}

💬

看到这里Scala中的分支控制是不是很简单,和java中的分支结构基本一样
下一篇文章将输出 Scala中的循环控制结构

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/874019.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-13
下一篇 2022-05-13

发表评论

登录后才能评论

评论列表(0条)

保存