簡單介紹Scala的基本數據類型,與Java惟一的不一樣是?

簡介
      Scala的基本數據類型與Java中的基本數據類型是一一對應的,不一樣的是Scala的基本數據類型頭字母必須大寫。java

整數類型變量定義 
       ``` //16進制定義法 scala> val x=0x29 x: Int = 41//十進制定義法 scala> val x=41 x: Int = 41//八進制定義法 scala> 051 res0: Int = 41 ```浮點類型變量定義``` //Double類型定義,直接輸入浮點數,編譯器會將其自動推斷爲Double類型 scala> val doubleNumber=3.141529     doubleNumber: Double = 3.141529//要定義Float類型浮點數,須要在浮點數後面加F或f scala> val floatNumber=3.141529F  floatNumber: Float = 3.141529scala> val floatNumber=3.141529f floatNumber: Float = 3.141529//浮點類型的變量還能夠採用指數表示法 //浮點數指數表示法,e也能夠是大寫E,0.314529e1與0.314529*10等同 scala> val floatNumber=0.314529e1 floatNumber: Double = 3.14529 ```字符變量定義//字符定義,用''將字符包裹 scala> var charLiteral='A' charLiteral: Char = A字符串變量定義``` //字符串變量用""包裹 scala> val helloWorld="Hello World" helloWorld: String = Hello World//要定義"Hello World",能夠加入轉義符\ scala> val helloWorldDoubleQuote="\"Hello World\"" helloWorldDoubleQuote: String = "Hello World"//若是但願可以原樣輸出字符串中的內容,則用三個引號"""將字符串包裹起來,如 scala> println(""" hello cruel world, \n \\ \b \, I am " experienced" programmer""") hello cruel world, \n \\ \b \, I am " experienced" programmer ```布爾類型定義scala> var x=true x: Boolean = true
類型操做
算術運算
      ``` //整數求和,編譯器會將其轉換爲(1).+(2)執行 scala> var sumVlaue=1+2 sumVlaue: Int = 3//前一語句等同於下列語句 scala> var sumVlaue=(1).+(2) sumVlaue: Int = 3//操做符重載,編譯器會將其轉換爲(1).+(2L)執行 scala> val longSum = 1 + 2L longSum: Long = 3//減法 scala> 1-3 res5: Int = -2//除法 scala> 1/3 res6: Int = 0
      //取模 scala> 1%3 res7: Int = 1
      //乘法 scala> 1L*3L res8: Long = 3
      //scala中能夠用+ -符號來表示正負數,例如-3 +3,而且能夠加入到運算符當中 scala> var y=1+ -3 y: Int = -2 ```關係運算//>運算符 scala> 3 > -3 res12: Boolean = true //<運算符 scala> 3 < -3 res13: Boolean = false //<=運算符 scala> 3 <= -3 res14: Boolean = false //<=運算符 scala> 3 <=3 res15: Boolean = true //<=運算符 scala> !(3<= -3) res16: Boolean = true邏輯運算``` //邏輯與:&& scala> val bool=true bool: Boolean = truescala> bool && bool res17: Boolean = true //邏輯或:|| scala> bool || bool res18: Boolean = truescala> bool || !bool res20: Boolean = true ```位運算``` // 00000001 // 00000010 // 00000000 scala> 1 & 2 res24: Int = 0// 00000001 // 00000010 // 00000011 scala> 1 | 2 res24: Int = 3// 00000001 // 00000011 // 00000010 scala> 1 ^ 3 res24: Int =2//00000001 //11111110 scala> ~1 res24: Int =-2//左移位(shift left) //00000110 //00001100 scala> 6 << 1 res29: Int = 12//右移位(shift left) //00000110 //00000011 scala> 6 >> 1 res28: Int = 3//無符號右移(shift left) //11111111111111111111111111111111 //00000000000000000000000000000001 scala> -1 >>> 31 res32: Int = 1 ```對象比較``` scala> 1==1 res34: Boolean = true
scala> 1==1.0 res35: Boolean = true
scala> val x="Hello" x: String = Hello
scala> val y="Hello" y: String = Hello
//Scala中的對象比較不一樣於Java中的對象比較 //Scala基於內容比較,而java中比較的是引用,進行內容比較時須定義比較方法 scala> x==y res36: Boolean = true ```運算符優先級運算符優先級以下圖所示,* / %優先級最高,依次類推。es6

相關文章
相關標籤/搜索