天天看點

Kotlin 變量和常量的聲明(var和val)

Kotlin有着非常非常智能化的聲明變量方式。叫做類型推斷

聲明變量要使用關鍵字var和val。

var聲明方式第一種(自動推斷):

var nub=1231;//自動定義整數型 使用分号

var ch=“這是一個字元串” //自動定義字元串 不使用分号      

同樣,是Kotlin自己判斷的資料類型。

當我們自動定義一個類型之後,這個類型就會固定下來這個類型。 正如我們下面的代碼。 定義一個字元串之後在指派一個數字就會報錯

fun main(agrs : Array<String>)
{
  var name="ARM830"//自動定義一個字元串  Kotlin自動判斷
      name=123 //此處會報錯
println(name)  //輸出
}      

正确的代碼是

fun main(agrs : Array<String>)
{
  var name="ARM830"//自動定義一個字元串  Kotlin自動判斷
     // name=123 //此處會報錯
name="重新再次指派"  //再次指派
println(name)  //輸出
}      

變量沒有使用關鍵字的情況下,可以再次指派。

觀察上面的代碼,我并有使用分号作為一個語句的結束。 當然使用分号也是可以的。

var第二種聲明方式(指定類型):

同樣也是使用var關鍵字進行聲明.

看下面的代碼:

fun main(agrs : Array<String>)
{
  var name:String="ARM830"//定義一個為String的變量

    println(name)  //輸出
}      

解釋: var name:String="ARM830"

定義一個變量,變量名是name,類型是String。

也就是一個變量要指定一個資料類型的時候,就要如此寫。

格式是:

var Typename :Type

var 變量名字 : 資料類型

一定要有冒号  

Val聲明方式

val是隻讀。

也就是說使用val進行定義類型。這個變量是隻讀,不可以修改的。

fun main(agrs : Array<String>)
{
     var name:String ="ARM830"; //定義一個為String的變量
     val year:Int =16;
     year=17; //此處會報錯,因為val是隻讀,不可以再次指派
     println(name+"\t"+year)  //輸出


}      

val聲明方式和var一樣是可以有兩種,一種自動推斷,一種指定類型。

******************************************************************************************************************************************************************************************************************

同樣,Kotlin也是可以使用聲明并指派,聲明再指派的兩種方式聲明變量。

聲明再指派

fun main(agrs : Array<String>)
{
    var name:String  //定義一個為String的變量
     name="ARM830";
    var year:Int
    year =16;
    println(name+"\t"+year)  //輸出


}      

不過值得一說,能夠使用聲明再指派這樣的方式,隻有指定資料類型才可以使用。

直接使用var第一種聲明方式,是不可以的。 切記!