栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Scala 学习相关

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Scala 学习相关

Scala 学习笔记 尚硅谷韩顺平 基础语法-01

日常数据开发用scala。深度学习一下语言特性。

println("rthellor")
    var name = "tom"
    var sal = 1.2
    printf("name=%s sal=%f", name, sal)
    println(s"name=$name sal=${sal + 1}")
    //类型确定后不能修改 强类型语言
    println(sal.isInstanceOf[Double])
    var `true` = "hello,scala"
    println("内容=" + `true`)
 var r2: Double = 10 / 3
    println("r2" + r2)
    var r3: Double = 10.0 / 3
    println("r3" + r3)
    import scala.io._
    val str = StdIn.readLine()
    println("str=" + str)
    val a = StdIn.readInt()
    println("a="+a)
    val age = 6
    if (age > 18) {
      println("age>18")
    } else {
      println("age<18")
    }
 for (i <- 1 to 3) {
      //1,2,3 前后闭合
      println(i + "1 to 3")
    }
    for (i <- 1 until 3) {
      //1,2,3 前闭 后开
      println(i + "1 until 3")
    }
    //循环守卫
    for (i <- 1 to 3 if i != 2) {
      println(i + "")
    }

    for (i <- 1 to 3; j = 4 - i) {
      println(j + "")
    }
//  嵌套循环
    for (i <- 1 to 3; j <- 1 to 5) {
      println("i=" + i + " j=" + j)
    }
//    循环返回值
//    遍历结果 返回到一个新的Vector 中 使用yield 关键字
    val res = for (i <- 1 to 10) yield i
//    将集合中的各个数据 进行处理 返回给新的集合
    println(res)
    val result = for (i <- 1 to 10) yield {
      if (i % 2 == 0) {
        i
      } else {
        "不是偶数"
      }
    }
    println(result)
    // for 推导式  仅包含 单一表达式 时 使用圆括号 当其包含 多个表达式 时 使用大括号。
    // Range 步长控制
    for (i <- Range(1, 30, 2)) {
      println("……&*")
      println(i + "=i")
    }
// 控制步长 也可以用 for 循环守卫。
    val start = 1
    val end = 100
    var count = 0
    var sum = 0
    for {i <- start to end; if (i % 9 == 0)} {
      count += 1
      sum += i
    }
    printf("count=%d,sum=%dn", count, sum)
    while (count > 8) {
      println("hello,sgg" + count)
      count = count - 1
    }
    // while 是先判断再执行语句 与 id 语句不同 While 本身返回结果是Unit 会对外部变量产生影响 不推荐使用
    do {
      printf(sum + "sum")
      sum = sum - 1
    } while (sum > 590)
  }
// scala 内置控制去掉了continue 和 break
   //breakable 对 break 抛出的异常做出了处理 代码继续执行。
    import util.control.Breaks._
    var n = 1
    breakable {
      while (n < 20) {
        n += 1
        println("n=" + n)
        if (n == 18) {
          break()
        }
      }
    }
    println("ok~")
    //也可以利用守卫实现中断
scala 数据类型
   scala 数据类型 分为两大类  AnyVal 值类型 和AnyRef 引用类型 不管是AnyVal 和AnyRef 都是对象Int Char。
    + 号使用 : 左右两边都是数值类型时 则做加法运算 当有一方为字符串时 则做拼接运算。 Null 是所有 AnyRef 的子类 Nothing 也是Bottom class
   
    类型转换 : byte short 和char 之间不会相互自动转化。
  
    scala 不支持三目运算符。  if else 替换
   
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/686156.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号