import junit.framework.TestCase import org.junit.Test import scala.runtime.RichByte //数据类型 class Demo2 extends TestCase { //规则1 定义整数类型变量时,默认数据类型是java中int类型 //规则2 当数值范围超过int值区间,会编译失败,需要在数值后面加上L,讲类型转为long类型 //规则3 定义小数类型变量时,默认数据类型是java中double类型 //规则4 当定义小数数据类型变量时,可以在值后尾添加D,或者F,这样scala会自动转为 double,float类型 //以上规则都是建立在 scala ---隐式推断变量数据类型 //规则5 显示定义具体数据类型变量 //规则6 当一行代码中有多条语句时,才需要用分号隔开 def test_show_datatype(){ //整数 var k1 = 1 var k2 = 10001 var k3 = 200001 var k4 = 20000000000l //小数 var k5 = 1.1 var k6 = 1.1d var k7 = 1.1f //布尔值 var k8 = true //字符型 var k9 = 'M' var k10 = "YOYO" val m1:String = "" val m2:Any = 1 } //scala 数据类型 def test_Rich(){ println("Scala 数据类型"); val m1:Byte = 1 //RichByte val m2:Char = 10 //RichChar var m8:Short = 11 //RichShort val m3:Int = 100 //RichInt val m4:Long = 1000L //RichLong val m5:Float = 100 //RichFloat val m6:Double = 100 //RichDouble val m7:Boolean = false //RichBoolean val b1 = m1.!=(10); val M9:String = "CS" //StringOps M9.indexOf(1); SUM(M9) var demo2 = new Demo2 demo2.SUM(M9) demo2 SUM M9 demo2.goto(10, 20, 1) demo2 goto (5,10,2) } def SUM(x: String){ println(x); val u1 = x(0) println(u1) } def goto(x:Int,y:Int,z:Int){ val r = x*y*z println(r) } }