Statement(문) 와 Expression(식) 의 구분
Statement : 자신을 둘러싸고 있는 가장 안쪽 블록의 최상위 요소로 존재하며 아무런 값을 만들어내지 않는다
Expression : 값을 만들어 내며 다른 식의 하위 요소로 계산에 참여할 수 있다
간단하게 줄여보기
1단계 - 블록이 본문인 함수
fun max(a: Int, b: Int): Int{
return if (a > b) a else b
}
2단계 - 식이 본문인 함수
fun max(a: Int, b:Int): Int = if (a > b) a else b
3단계 - 식이 본문이고 반환 타입을 생략한 함수
fun max(a: Int, b: Int) = if(a > b) a else b
변수 선언시 사용하는 키워드
val - 변경 불가능한 참조를 저장하는 변수. 초기화 후에는 재대입 불가능
참조 : 불변 , 참조가 가리키는 객체의 내부 값 : 변경 가능
var - 변경 가능한 참조를 저장하는 변수
문자열 템플릿 다양하게 사용하기
1단계 - 변수 사용하기
fun main(args: Array<String>){
val name = if (args.size >0) args[0] else "Kotlin"
println("Hello, $name!")
}
2단계 - 변수 없이 바로 접근하기
fun main(args: Array<String>){
if( args.size >0){
println("Hello, ${args[0]}!")
}
}
3단계 - 중괄호 안에 다 넣어버리기
fun main(args: Array<String>){
println("Hello, ${if (args.size >0) args[0] else "someone"}!")
}