Scala數據類型與變量

一、scala數據類型

Byte:8位有符號整數

Short:16位有符號整數

Int:32位有符號整數

Long:64位有符號整數

Float:32位單精度浮點數

Double:64位雙精度浮點數

Char:16位無符號Unicode字符

String:字符串類型

Boolean:true或false

Unit:表示無值,主要用於無返回結果的方法的返回類型。Unit的實例值爲()

Null:null或空引用

Nothing:所有類型的子類。

None:Option的子類型

Nil:空的list

 

二、字符串常用操作

1、數字類型直接轉字符串

val num:Int=10
println(num.toString)

直接使用toString()方法,toString方法可以不帶()

2、字符串轉數字

如果能夠確認字符串爲數字類型,可以直接使用toInt,toDouble進行轉換。如果不能確認,可以使用如下方法進行判斷或轉換:

def isDouble(value:String):Boolean={

  var c:Try[Any]=null

  c=scala.util.Try(value.toDouble)

  val result = c match {

    case Success(_) => true;

    case _ =>  false;

  }

  result

}



def toDouble(value:String):Option[Double]={

  try {

    Some(value.toDouble)

  } catch {

    case e: Exception =>Some(-0.0)

  }

}

3、字符串長度

val value:String="1.0.5"

println(value.length)

out:5

4、字符串格式化

println("%s-%s-%s".format("aa","bb","cc"))

out:aa-bb-cc

 

三:特殊的數據類型,如Null、None、Nil、Nothing的區別

四種類型均爲空值類型

  1. Null爲空引用,是所有AnyRef的子類,也就是說所有引用類型的空類型可以使用Null,值類型不可以使用Null。
  2. None是一個object,是Option的子類型,some也是option的子類,Option爲空時使用None。
  3. Nil是List一個子類,List爲空時可以使用Nil
  4. 最後說下Nothing,Nothing是所有類型的子類,所有類型爲空時可以使用Nothing

 

四、對象的基類:Any、AnyRef、AnyVal

Any:任何對象的基類,包括AnyRef和AnyVal

AnyRef:引用類型對象的基類

AnyVal:值類型對象的基類

 

五、變量

1、變量: 在程序運行過程中其值可能發生改變的量叫做變量。使用var聲明

2、常量:在程序運行過程中其值不會發生變化的量叫做常量。使用val聲明

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章