scala语法链接整理

scala详细语法

https://blog.csdn.net/qq_39346903/article/details/113562823?ops_request_misc=&request_id=&biz_id=102&utm_term=scala%E6%95%99%E7%A8%8B&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-8-113562823.pc_search_all_es&spm=1018.2226.3001.4187

 由于scala写法灵活,有多种写法,这里记录一下自己常用的写法。

自己适用的写法方式记录以下

1  变量与常量

    var修饰的变量可以改变 val修饰的变量不可以改变(val 类似于java中的final关键字,特别在数组和map等对象引用上起到的作用和java一致,都是堆中引用指向不变 不指向新的内存对象 ,但是其中的值可以改变)

 var 变量名 [: 变量类型] = 初始值

      var i:Int = 10   也可以写成 var i=10   系统会根据你输入的值自动判定

​ val 常量名 [: 常量类型] = 初始值

      val j:Int = 20   也可以写成 val j=10

 2   数据类型 

java中的基本类型和引用类型是分开的,scala中是只有基本类型,尤其注意 这些基本类型都是大写开头

 3 . 运算符

运算符计算规则和java大致没有什么区别,唯一注意的是scala中的运算符其实都是函数

比如加法运算

val k:Int 其实是这种形式val i:Int = 1.+(1)

4. 流程控制

4.1    if条件判断和java 没什么区别

4.2   for 循环条件判断 和java的写法基本不一样 有很多新特性

这里罗列以下大概有哪些特性写法,具体使用可以去链接看

范围数据循环 to 

for(i <- 1 to 3){

print(i + " ")

}

范围数据循环until

for(i <- 1 until 3) {

print(i + " ")

}

循环守卫

for(i <- 1 to 3 if i != 2) {

print(i + " ")

}

循环步长

for (i <- 1 to 10 by 2) {

println(“i=” + i)

}

嵌套循环

for(i <- 1 to 3; j <- 1 to 3) {

println(" i =" + i + " j = " + j)

}

引入变量

for(i <- 1 to 3; j = 4 - i) {

println(“i=” + i + " j=" + j)

}

循环返回值

​ var res = for(i <-1 to 10) yield {

​ i * 2

倒序打印

for(i <- 1 to 10 reverse){
println(i)
}

4.3 while和do while写法和java没什么太大的区别

 

 

 

 

 

 

 

posted @ 2021-11-09 22:30  习惯了蓝  阅读(97)  评论(0)    收藏  举报