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第一种声明方式,是不可以的。 切记!

 

posted @ 2017-09-23 10:21  ARM830  阅读(600)  评论(0编辑  收藏  举报