fun main() {
aFunction()
}
fun aFunction(){
println("a 체크")
println("a 체크")
}
<print>
a 체크
a 체크
function(함수)
: 특정한 동작을 하거나 원하는 결과값을 연산하는데 사용.
: 코드의 재사용성, 가독성을 높임.
- fun 함수명(변수:타입지정): 반환형 타입지정 ()
- 함수명()
: 함수 호출. 호출 제한이 없기 때문에 해당 함수가 필요해지면 함수 사용.
- 함수가 없다면?
fun main() { println("a 체크") println("a 체크") println("a 체크") //... 10번 } |
fun main(){ aFunction10Print() } |
: 반복적인 코드를 하나로 압축.
* 함수명 사용 시! 어떤 목적, 용도인지 명확하게 파악하고 이름 짓기
fun main() {
aFunction2Print()
}
fun aFunction2Print(a: String, b: Int){
println("a 체크")
println("a 체크")
}
<print>
No value passed for parameter 'a', No value passed for parameter 'b'
: a,b 변수에 파라미터를 지정하지 않았다, 는 에러 발생.
//변수 타입 지정 가능.
fun main() { aFunction2Print(a="안녕",b=10) } |
fun main() { aFunction2Print(10, "안녕") } |
<print> "a 체크" "a 체크" 안녕 10 |
<print> Type mismatch: inferred type is String but Int was expected : 해당변수 값을 지정하지 않고 값의 위치를 바꿀 시 에러 발생. |
: a,b 타입에 맞는 값는 매칭해야 함.
fun main() {
println(aFunction2Print(a = "안녕", b = 10))
}
fun aFunction2Print(a: String, b: Int) : String{
println("a 체크")
println("a 체크")
println(a)
println(b)
return "Hi"
}
<print>
"a 체크"
"a 체크"
안녕
10
Hi
- return
: 함수 안에서 사용 시 뒤에 오는 값을 반환하는 키워드.
: return이 발생한다면 함수의 중간이더라도 값을 반환하고 함수를 종료하게 됨.
- 단일 표현식 함수
: return은 여러가지 일을 하는 것이 아닌, 해당 값을 반환하는 역할만 하므로 함수를 좀 더 간단하게 기술 가능.
fun main(){ println(add(5,6,7)) } fun add(a:Int, b:Int, c:Int) : Int{ return a+b+c } |
fun main(){ println(add(5,6,7)) } fun add(a:Int, b:Int, c:Int) = a+b+c |
<print> 18 |
<print> 18 |
- 타입추론
변수나 함수들을 선언할 때나 연산이 이루어질때 자료형을 코드에 명시하지 않아도 코틀린이 자동으로 자료형을 추론해주는 기능. 값에 할당된 형태로 해당 변수가 어떤 자료형을 가지는지 추론 가능.
fun main() {
val result = aFunction2Print("잘가", 20)
println(result)
}
fun aFunction2Print(a: String, b: Int) : String{
println("a 체크")
println("a 체크")
println(a)
println(b)
return "Hi"
}
<print>
"a 체크"
"a 체크"
잘가
20
Hi
- 변수에도 할당 가능.
'연습장 > 이론' 카테고리의 다른 글
클래스 2. 주생성자와 보조생성자 (0) | 2024.01.26 |
---|---|
클래스 1. 클래스의 사용 (1) | 2024.01.26 |
Kotlin_ 1-1. 변수 (0) | 2024.01.25 |
Kotlin_ 6. Null Safety (0) | 2024.01.18 |
Kotlin_ 5. 클래스와 설계 (0) | 2024.01.17 |