if表达式
if表达式的定义,if表达式是有值的,就是if或else中最后一行语句返回的值。
if表达式的类型推断,if和else子句的值类型可能不同,Scala会自动进行推断,取两个类型的公共父类型。
如果if后面没有跟else,则默认else的值是Unit,也用()表示,类似于Java中的void或null。
将if语句放在多行中,默认情况下,REPL只能解释一行语句,但是if表达式通常需要放在多行,可以使用{}方式,或者使用:paste和ctrl+D的方式。
语句终结符与块表达式
语句终结符,默认情况下,Scala不需要语句终结符,默认将每一行作为一个语句。如果一行要放多条语句,则必须使用语句终结符分号。通常来说,对于多行语句,还是会使用花括号的方式。
块表达式,就是{}中的值,其中可以包含多条语句,最后一个语句的值就是块表达式的返回值。
输入和输出
print打印时不会加换行符,而println打印时会加一个换行符,printf可以用于进行格式化。readLine允许我们从控制台读取用户输入的数据。
综合案例:游戏厅门禁
循环
while do循环,
Scala没有for循环,只能使用while替代for循环,或者使用简易版的for语句、或者使用until,也可以对字符串进行遍历,类似Java的增强for循环。
跳出循环语句,Scala没有类似于Java的break语句。可以使用boolean类型变量、return或者Breaks的break函数来替代使用。
高级for循环,九九乘法表。
if守卫,取偶数。
for推导式,构造集合。
本文首发于steem,感谢阅读,转载请注明。
https://steemit.com/@padluo
微信公众号「数据分析」,分享数据科学家的自我修养,既然遇见,不如一起成长。
数据分析
读者交流电报群
https://t.me/sspadluo
知识星球交流群
知识星球读者交流群
领取专属 10元无门槛券
私享最新 技术干货