Scala 基础语法一
| 语句 | 说明 | 示例 |
|---|---|---|
| var | 用来声明一个变量, 变量声明后,在程序执行过程中可以被修改。 | def main(args: Array[String]): Unit = { var var1=100 var var2:Int=100 //变量修改 var2=200; var3="world"; } |
| val | 用来声明一个常量, 一旦被赋值就不能再进行修改 | //定义常量,但不允许修改常量 val vall=100 //常量修改将报错 vakk=200 |
| 操作符 | scala中操作符即方法,方法即操作符所以 可以认为 scala中 并没有传统意义上的操作符 所有的操作符都是方法 所有的方法也都可以像操作符一样去使用 |
· 算术运算符 + - * / % · 关系运算符 == != > < >= <=== > < >= <= · 逻辑运算符 && || ! · 位运算符 ~ & | ^ << >> >>> · 赋值运算符 = += -= *= /= %= |

图片1.png

图片3.png

图片4.png

图片8.png

图片7.png
Scala 基础语法二
| 语句 | 说明 | 示例 |
|---|---|---|
| if……else | if……else 判断 if是具有返回值的,if判断后,将执行代码的最后一个表达式的值返回作为整个if执行后的结果。 | //一个简单的示例 var var1=10; if(var1<100){ println("小了") }else{ println("大了") } //根据scala函数式编程风格,建议做如下更改 //尽量使用常量 val val1=10; //if……else最后一行的值是返回值,可省略return val result= if(val1<100){ "小了"; }else{ "大了"; } print(result) //也可以简化成下面的形式 val val2=10; println(if(val2<100)"小了"else"大了"); |
| while | 和java中用法相同 | //一个简单的例子 val val1=List(1,2,3,4); var index=0; while(index<val1.size){ println(val1(index)); index+=1; } |
| for | scala中的for要比java的for强大,使用很频繁,需要熟练掌握。 | //生成一个1~100的区间,区间类型是range val val1=1 to 100; //循环遍历并打印 for(num <-val1){ println(num) } //支持条件过滤 for(num<-val1;if num>50){ println(num) } //支持多条件过滤 for(num<-val1;if num>50;if num%2==0;if num<90) println(num) //也可以写成下面的形式 for(num<- 1 to 100;if num>50&&num<90&&num%2==0){ println(num) } |
| try catch finally | scala中继承了java的异常机制 | import java.lang try { throw new RuntimeException("error"); }catch { case t: NullPointerException => t.printStackTrace();("空指针异常"); case t: Exception=>t.printStackTrace();println("其他异常"); }finally { println("资源释放") } |
| match | scala中的match类似于其他语言的switch | //一个简单的例子 //match匹配到case后,执行case对应的内容, //然后退出match,于java不同的是,不需要写break val val1="bbb"; val1 match { case "aaa" =>println("1"); case "bbb" =>println("2"); case _ =>println("3"); } //此外,match可以带有返回值 val result=val1 match{ case "aaa" =>1 case "bbb" =>2 case _ =>3 } |
| breakcontinue | scala中没有break和continue语句,需要通过另外的形式来实现 | import util.control.Breaks._ object Demo12 { def main(args: Array[String]): Unit = { //实现break breakable( for(i <- 1 to 10){ if(i==8){ break(); }else{ println(i); } } ) //实现continue for(i<-1 to 10){ breakable( if(i==8){ break; }else{ println(i); } ) } } } |