반응형
정말 기초부터 혼자 공부하면서 같이 정리해나가는 정리노트
1. Any
- Any는 코틀린에서 최상위 클래스
- Any 타입으로 선언한 변수에는 모든 타입의 데이터 허용
fun main()
{
var data1 : Any = 10
var data2 : Any = "Hi"
var data3 : Any = 3.3
println(data1)
println(data2)
println(data3)
}
2. 함수 선언
- 코틀린에서 함수를 선언하려면 fun 키워드를 사용해야한다
- 반환 타입이 없다면 자동으로 Unit타입이 적용되며 생략가능하다
- 함수의 매개변수에는 var, val 키워드를 사용할 수 없다
- 매개변수에는 기본값을 선언할 수도 있다 (default)
- 매개변수 역시 없다면 생략가능하다
fun main()
{
// 함수 선언
// 매개변수 x, 반환값 x
fun nameming()
{
println("Hong gil dong")
}
// 매개변수 O, 반환값 x
fun nameming2(str : String) : Unit
{
println(str)
}
// 매개변수 O, 반환값 O
fun sum(data1 : Int, data2 : Int) : Int
{
return data1 + data2
}
// 매개변수 O, 반환값 O, data2의 값이 없을 경우 10으로 대체
// default값
fun sum2(data1 : Int, data2 : Int = 10) : Int
{
return data1 + data2
}
// 함수 호출
nameming()
nameming2("Kim")
var sum = sum(3,4)
println(sum)
var sum2 = sum2(3)
println(sum2)
}
3. Nothing, null 허용
- null만 대입가능
- 변수로써의 기능은 없으므로 거의 사용안함
- 주로 함수의 반환형에 사용
- null 값을 대입하기 위해서는 항상 ?연산자가 앞에 붙어야한다
- 안드로이드 버전이 올라감에 따라 ?가 없이도 null 들어갈 수도 있다
fun main()
{
// 사실상 그냥 null이라는 의미로 무쓸모
var data1 : Nothing? = null
var data2 = null
// Nothing을 이용한 함수사용
fun some1() : Nothing?
{
return null
}
fun some2() : Nothing
{
throw Exception()
}
// null 허용
var num1 : Int = 10
num1 = null // 오류 null허용 못함
var num2 : Int? = 20
num2 = null // ?연산자로 인한 null 허용
}
728x90
반응형
'나미 > 안드로이드' 카테고리의 다른 글
코틀린으로 앱개발까지.. 9. 클래스 상속 (37) | 2023.11.17 |
---|---|
코틀린으로 앱개발까지.. 8. 클래스와 생성자(class, constructor) (8) | 2023.10.19 |
코틀린으로 앱개발까지.. 7. 반복문(for, while) (2) | 2023.10.19 |
코틀린으로 앱개발까지.. 6. 조건문 (if else, when) (2) | 2023.10.18 |
코틀린으로 앱개발까지.. 5. 배열 (Array, List, Set, Map) (0) | 2023.10.15 |
코틀린으로 앱개발까지.. 3. 문자와 문자열 (1) | 2023.10.10 |
The emulator process for AVD Pixel_2_API_30 has terminated (2) (0) | 2023.10.10 |
The emulator process for AVD Pixel_2_API_30 has terminated (0) | 2023.10.05 |
코틀린으로 앱개발까지.. 2. 변수 선언 (0) | 2022.11.25 |
코틀린으로 앱개발까지.. 1. 데이터 출력 (0) | 2022.11.24 |