코틀린 기본 문법 5 - 기타기능
//******************************* 확장 함수
//쉽게 기존 클래스에 함수를 추가할수 있다
//확장함수를 추가할 클래스에 점을 찍고 함수이름 작성
//확장 함수 내부에서는 이 객를 this로 접근할수 있다
//이러한 객체를 리시버 객체라고 함
fun Int.isEven() = this % 2 == 0
val aa = 5
val bb = 6
println(aa.isEven())
println(bb.isEven())
//******************************* 형변환
//숫자형 자료형끼리는 to자료형() 메서드를 사용하여 형변환 가능
val a = 10L
val b = 20
val c = a.toInt()
val d = b.toDouble()
val e = a.toString()
//문자형 숫자를 숫자타입으로 변환
val intStr = "10"
val str = Integer.parseInt(intStr)
println(str)
//일반 클래스간에 형변환을 할려며 as 사용
open class Animal
class Dog : Animal()
val dog = Dog()
val animal = dog as Animal //dog를 Animal형으로 변환
//******************************* 형체크
//is 키워드를 사용하여 형을 체크할수있다.instanceOf 사용
var sstr = "hello"
if (sstr is String) { //str이 STring이라면 들가...이후 sstr은 타입케스팅됨
println(sstr.toUpperCase())
}
//******************************* 고차함수
//인수로 함수를 전달하거나 함수를 반환할수있다.
//인수 : 숫자, 숫자, 하나의 숫자를 인수로 하는 반환값이 없는 함수
fun add(x : Int, y : Int, callback : (sum : Int) -> Unit) {
callback(x + y)
}
add(5,6,{println(it)})
//******************************* 동반객체
class Fragment {
companion object {
fun newInstance() {
println("생성됨")
}
}
}
val fragment = Fragment.newInstance()
//******************************* let()함수
//******************************* with()함수
//******************************* apply()함수
//******************************* run()함수
'Kotlin > Kotlin 문법' 카테고리의 다른 글
변수와상수 (0) | 2022.07.11 |
---|---|
앱 개발을 위해서 꼭 알아야할 코틀린 문법 3가지 (0) | 2022.07.05 |
코틀린 기본 문법 4 (0) | 2022.06.02 |
코틀린 기본 문법 3 (0) | 2022.05.26 |
코틀린 기본 문법 2 (0) | 2022.05.25 |
댓글