• Scala-基础-流程控制语句


    import junit.framework.TestCase
    import scala.util.control.Breaks._
    //流程控制语句
    //关键字 if else match 
    class Demo4 extends TestCase {
    
      //规则1 if else 有返回值,取最后的值
      //规则2 默认返回的值,当值没有设置时,用()代替
      //规则3 java中的switch没有出现,被scala中的 match代替了,该match允许在匹配值期间,做相关配合运算
    
      // if else 
      def test_+ {
        val k1 = 105
        val k2 = 101
        println(if (k2 > k1) k2);
        println(if (k2 > k1) 100);
        println(if (k2 > k1) 100 else 101);
    
        val m1 = if (k1 == 105) {
          if (k2 == 101) 103 else 104
        } else if (k2 == 101) {
          200;
        } else {
          300;
        }
    
      }
    
      //switch
      def test_() {
        val k1 = 11;
        var result = 0;
        val m1 = k1 match {
          case 100 => result = 1056; "ABC";
          case 101 => result = 1001; "CBA";
          case _   => result = 1002; "CAB";
        }
        println(result);
        println(m1);
      }
    
      //for 循环
      def test_*() {
        //for(i < 1 to n ) println()   
        // for(i <- 1 to 10)  print(i+",")
        var rs = 0
        for (i <- 1 to 10) {
          rs += i
        }
        rs = 0;
        //for循环 倒序
        for(i <- (1 to 5).reverse){print(i+" ")}
        
        for (i <- 1 to 3; j <- 1 to 3) {
          rs += (i * j)
        }
    
        for (i <- 1 to 10 if i != 5) {
          // println(i);
        }
    
        for (i <- 1 to 10 if i != 5; j <- 1 to 10 if j != 8) {
          //println(i*j);
        }
    
        for (i <- 1 to 10; from = i * 2; j <- 1 to from) {
          //println(j);
        }
        
        
    
      }
      //while 循环
      def test_/() {
        var rs = 0;
        var i = 0;
        while (i < 10) {
          i += 1;
          // println(i);
          rs += i;
        }
        //println(rs);
        rs = 0;
        i = 10;
        while (i > 0) {
          rs += i;
          i -= 1;
        }
        println(rs);
      }
    
      //break;countinue;
      def test_^() {
        var flag = true;
        for (i <- 1 to 10 if flag) {
            if (i == 5) {
                flag = false;
            }
          if(flag){
            //println(i);
          } 
          flag = true;
        }
        
        
        breakable{
          for(i <- 1 to 5){
            if(i==4){
              break;
            }
            println(i);
          }
        }
        
      }
    }
  • 相关阅读:
    实验四 决策树算法及应用
    实验三 朴素贝叶斯算法及应用
    实验二 k-近邻算法及应用
    实验一 感知器及其应用
    实验三 面向对象分析与设计
    实验二 结构化分析与设计
    实验一 软件开发文档与工具的安装与使用
    ATM管理系统
    流程图与活动图的区别与联系
    四则运算2
  • 原文地址:https://www.cnblogs.com/ak23173969/p/6782264.html
Copyright © 2020-2023  润新知