티스토리 뷰

반응형

변수 정의방법

(var or val) 변수명 : 타입(생략가능) = 초기화 [<getter>] [<setter>]

getter 및 setter은 선택 사항입니다.

참고로 코틀린은 세미콜론이 필요없습니다.

// val(value) 자바 final 처럼 수정이 불가능함 읽기만 가능
val valIntA: Int = 1
val valIntB = 2
val valStr1: String = "valStr1"
val valStr2 = "valStr2"

// var(variable) 수정이 가능한 변수
var varIntA: Int = -1
var varIntB = -2
var varStr1: String = "varStr1"
var varStr2: String = "varStr2"

// getter, setter 
var name: String = "홍길동"
	get() = field
	set (value) {
		println("setter 실행중")
		println("기존 값, " + field)
		println("변경 값, " + value)
		field = value
	}
    
fun main(args: Array<String>) {
	// val 변수 출력
	println(valIntA)
	println(valIntB)
	println(valStr1)
	println(valStr2)
	valIntA = 100 // val은 값 수정 불가 에러 발생 실행 할 때 지우세요!!

	// var 변수 출력
	println(varIntA)
	println(varIntB)
	println(varStr1)
	println(varStr2)
	
	varIntA = -100 // var은 수정 가능
	varStr1 = "Hi"
	println(varIntA)
	println(varStr1)
    
    // 숫자를 쉽게 읽을 수 있도록 _ 언더 바를 이용할 수도 있습니다.
    val money = 1_000_000
    println(money)
    
    // get, set
    println("1, " + name)
    name = "김철수"
}

출력 결과

1
2
valStr1
valStr2


-1
-2
varStr1
varStr2


-100
Hi

 

1000000

 

1, 홍길동
setter 실행중
기존 값, 홍길동
변경 값, 김철수

반응형
댓글
최근에 올라온 글
최근에 달린 댓글