scala
[Scala] val, var, def의 차이
sungjine
2018. 2. 28. 23:19
반응형
간단하게 var은 변수를 담기 위한 키워드고 val은 상수를 담기 위한 키워드며 def는 함수를 담기 위한 키워드다.
var과 val의 차이점은 var은 변수이기에 변경이 가능하고 val은 상수이기에 변경할 수 없다.
예제)
var number = 1
number = 2 // 정상
val number = 1
number = 2 // 에러
def에도 그냥 값을 담을 수 있어 def와 var, val에 대한 내용이 헷갈릴 수 있는데 차이점은 var, val은 선언을 할 때 값이 정해지며 def는 호출할 때 계산한 후 값을 반환한다.
예제)
val numberA = 1
var numberB = 2
val printA = numberA + numberB
def printB = numberA + numberB
println(printA) // 3
println(printB) // 3
numberB = 5
println(printA) // 3
println(printB) // 6
반응형