728x90
반응형
# 함수
● 함수를 선언하는 방법
fun 함수명(변수명: 타입, 변수명: 타입 .. ) : 반환형 {
함수내용
return 반환값
}
예시 1) 매개변수가 있는 일반적인 함수
fun plus(first: Int, second: Int): Int {
println(first)
println(second)
val result: Int = first + second
println(result)
return result
}
fun main(array: Array<String>){
val result = plus(5, 10)
println(result)
}
예시 2) * 순서와 관계없이 동일하게 값을 보내준다
fun plus(first: Int, second: Int): Int {
println(first)
println(second)
val result: Int = first + second
println(result)
return result
}
fun main(array: Array<String>){
val result2 = plus(first = 20, second = 30)
println(result2)
val result3 = plus(second = 30, first = 20)
println(result3)
}
예시 3) 반환값이 있는 디폴트 값을 갖는 함수
fun plusFive(first: Int, second: Int = 5): Int{ // second 는 기본값을 갖는다
val result: Int = first + second
return result
}
fun main(array: Array<String>){
val result4 = plusFive(10, 20)
val result5 = plusFive(10)
println(result4)
println(result5)
}
예시 4) 반환값이 없는 함수 : Unit 사용
fun printPlus(first: Int, second: Int): Unit {
var result: Int = first + second
println(result)
}
fun main(array: Array<String>){
printPlus(10, 6)
}
예시 5) 간단하게 함수를 선언하는 방법
fun plusShort(first: Int, second: Int) = first + second
예시 6) 가변인자를 갖는 함수 선언하는 방법
fun plusMany(vararg numbers:Int){
for (number in numbers){
println(number)
}
}
fun main(array: Array<String>){
plusMany(1,2,3,4,5)
plusMany(100)
}
# 내부 함수
예시 1)
fun minusThree(first: Int, second: Int, third: Int) = first - second - third
fun main(array: Array<String>){
var result3 = minusThree(10,1,2)
println(result3)
}
예시 2)
fun multiplyThree(first: Int = 1, second: Int = 1, third: Int = -1): Int {
return first * second * third
}
fun main(array: Array<String>){
var result4 = multiplyThree(2,2,2)
println(result4)
var result5 = multiplyThree()
println(result5)
}
예시 3)
fun plusThree(first: Int, second: Int, third: Int): Int {
return first + second + third
}
fun main(array: Array<String>){
var result1 = plusThree(1,2,3)
println(result1)
var result2 = plusThree(10,1,2)
println(result2)
}
728x90
반응형
'🎨 Programming > Android(Kotlin)' 카테고리의 다른 글
[Kotlin] 6. Collections : Iterators (0) | 2020.12.01 |
---|---|
[Kotlin] 5. 컬렉션(Collection) (0) | 2020.12.01 |
[Kotlin] 4. 배열 (0) | 2020.12.01 |
[Kotlin] 3. 조건문 & 반복문 (0) | 2020.12.01 |
[Kotlin] 1. 변수 & 자료형 (0) | 2020.12.01 |