scala基础知识总结(一)基本语法应用

文章目录

    • 1、scala与java比较运算符的区别
    • 2、位运算符
    • 3、字符串的变量替换
    • 4、键盘输入
    • 5、惰性赋值
    • 6、块表达式,scala中选择结构和和块表达式都有返回值,最后一行就是返回值

1、scala与java比较运算符的区别

== 与 != 在scala中是比较数据值,在java中比较地址值
eq方法在scala中用于比较引用值(地址值),java中的equals()方法是比较数据值

2、位运算符

a >> n 相当于 a*2的n次方
a << n 相当于 a/2的n次方

3、字符串的变量替换

在scala变量替换的方法,可以直接把变量名称写在字符串中
用法(必须是s开头):

s"…${变量名}…" // …代表省略的字符串,其中大括号{}可以省略,但是不建议

示例:

val name = "zhangsan"
val age = 20
val sex = "male"
val result = s"姓名:${name}, 年龄:${age}, 性别:${sex}"
print(result)  // 姓名:zhangsan, 年龄:20, 性别:male

4、键盘输入

scala键盘输入可以使用java的Scanner包也可以使用它自己的包

第一步:导包

scala.io.StdIn

第二步:使用

通过StdIn.readXxx()方法来接收用户输入
接收字符串输入:StdIn.readLine()
接收整数数据输入:StdIn.readInt()
......

示例:接收用户输入的姓名和年龄,在控制台输出

import scala.io.StdIn

println("请输入姓名:")
val name = StdIn.readLine()
println("请输入年龄:")
val age = StdIn.readInt()
println("请输入余额:")
val money = StdIn.readFloat()
println(s"姓名:${name}, 年龄:${age}, 余额:${money}")

5、惰性赋值

在scala中,如果对一个变量进行惰性赋值,那么它在被调用之前不会加载到内存中,首次被调用开始加载,节约资源
关键字:

lazy

用法:

lazy val 变量名 =// lazy变量不能使用var定义

6、块表达式,scala中选择结构和和块表达式都有返回值,最后一行就是返回值

块表达式由{}包裹,可以通过返回值用来赋值
例如:

val a = {
	print("这里是给a赋值的块表达式")
	1+1  // 返回值,将会赋值给a
	}

你可能感兴趣的:(Scala)