scala(斯高拉)
1. val 与var
val 申明一个常量
var 申明一个变量
指明变量类型方式: val greeting: String = null
val greeting:Any = "hello"
var greeting,message:String = null //greeting和message都为String类型,初始值为null
变量名区分大小写
变量类型在变量名之后
var x = 20
val y = x
var z = x
x=30
println(y) //20
println(z) //20
不同于java,val和var变量的初始值赋值x后,不会因为x改变而改变。
2. 数据类型
基本类型 Int Double Boolean String
单行String用 " string content "
多行String用 """ string content """
其它类型 Byte Char Short Int Long Float Double Boolean
RichInt RichDouble RichChar
BitInt BigDecimal
3. 运算符
scala没有++和--运算符
counter += 1
counter -= 1
4. 引入包
import scala.math._ //在scala中用_符号表示通配符,类似java中的*,scala开头的包,可以省去scala
等效方式: import math._
5.习题
计算3的平方根,再求该值平方
import math._
sqrt(3)
res4: Double = 1.7320508075688772
res4*res4
res5: Double = 2.9999999999999996
res变量是val还是var?
答: val ,常量
“crazy”*3
res10: String = crazycrazycrazy
10 max 2的含义是什么?max方法定义在哪个类中?
10 max 2
res11: Int = 10
取2个数中较大一个,类似于 max(10,2)
包含在bigInt类中
用BigInt计算2的1024次方
scala> BigInt(2).pow(1024)
res13: scala.math.BigInt = 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137216
获取字符串的首字符和尾字符
scala> val text="hello"
text: String = hello
scala> text(0)
res0: Char = h
scala> text.take(1)
res8: String = h