当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Kotlin var和val的区别用法及代码示例


var 和 val 都用于在 Kotlin 语言中声明变量。但是,它们之间存在一些关键区别:

VAR(Variable)

它是一个一般变量。使用 var 声明的变量的值可以在整个程序中随时更改。 var 也称为可变的非最终变量,因为值可以随时更改。
例子:


fun main() 
 { 
   var marks = 10 
   println("Previous marks is " + marks) 
   marks = 30 
   println("New marks " + marks) 
 } 

输出:

Previous marks is 10
New marks 30

VAL(Value)

使用val存储的对象不能改变,也不能重新赋值,就像java中的final关键字一样。 val 是不可变的。然而,一旦赋值,val 就变成只读的,val 对象的属性可以更改,但对象本身是只读的。

示例 1:


fun main() 
{ 
    val marks = 10  
    println("Previous marks is " + marks) 
    marks = 30  
    println("new marks " + marks) 
} 

输出:

Val cannot be reassigned

示例 2:


// Changing values of val object 
fun main() 
{ 
    val book = Book("Java", 1000) 
    println(book) 
    book.name = "Kotlin" 
    println(book) 
} 
data class Book(var name : String = "", 
                var price : Int = 0) 

输出:

Book(name=Java, price=1000)
Book(name=Kotlin, price=1000)


相关用法


注:本文由纯净天空筛选整理自shirshak大神的英文原创作品 Difference between var and val in Kotlin。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。