일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 아두이노 모터 드라이버
- 약수 구하기
- ESP32_S2_WROVER
- 개발 보드
- 카이캐드 설치
- 라즈베리파이 피코
- 우송대학교
- 업캐스팅
- 우송대
- KiCad
- 공약수
- GCD
- 코틀린
- 추상화함수
- 카이캐드 다운로드
- string함수
- ESP32_S2
- 안드로이드스튜디오
- 7세그먼트
- PICO4
- kotlin
- 우송대 라즈베리파이 피코
- androidstudio
- 아두이노
- 카이캐드
- ATmega328p
- 유클리드 호제법
- 재정의함수
- Arduoin
- L293D
- Today
- Total
개발자의 생활
함수 본문
이번에는 함수를 사용하는 방법을 알아보겠습니다.
간단한 예시를 먼저 보고 하나씩 알아보겠습니다.
fun main() {
helloWorldPrint()
numberAddPrint(3, 7)
println(helloWorld())
println(numberAdd(2, 3))
println(oneLineFun(10, 20))
}
fun helloWorldPrint(){
println("helloWorld")
}
fun numberAddPrint(num1: Int, num2: Int){
var num3 = num1 + num2
println("$num1 + $num2 = $num3")
}
fun helloWorld(): String{
return "helloWorld"
}
fun numberAdd(num1: Int, num2: Int): Int{
var num3 = num1 + num2
return num3
}
fun oneLineFun(num1: Int, num2: Int) = num1 + num2
위 코드를 보시면 함수를 생성할 때는 fun키워드를 이용하고 반환값이 있으면 반환타입을 함수 끝부분에 붙여주기만 하면 됩니다. 다른 부분들은 타 언어와 크게 다를 게 없습니다.
각각 하나씩 자세히 보겠습니다.
fun helloWorldPrint(){
println("helloWorld")
}
위 함수는 매개변수와 반환값이 없는 함수입니다.
특별히 설명할게 없으니 넘어가겠습니다.
fun numberAddPrint(num1: Int, num2: Int){
var num3 = num1 + num2
println("$num1 + $num2 = $num3")
}
위 함수는 매개변수가 2개 있습니다.
아마 왜 var 이나 val이 안 붙어 있는지 의문이 생기실 거 가같은데요 그 이유는 코틀린 언어의 특성을 생각해 보시면 이해가 됩니다.
코틀린은 간결하고 명확한 코드를 지향하기 때문에 불필요한 부분은 생략하고 간결하게 보이도록 설계되어 있습니다. 내부적으로 매개변수를 선언하면 val 타입으로 만들어지게 됩니다. var을 임의로 지정할 수 없기 때문에 굳이 val을 작성할 필요가 없으므로 작성하지 않아도 됩니다.(오히려 작성하면 문법오류가 발생합니다.)
val타입으로 생성되었기 때문에 함수 내부에서 값을 변경하지 못하게 되어있습니다.
fun helloWorld(): String{
return "helloWorld"
}
이 함수는 매개변수 없이 반환타입만 있습니다.
반환값이 있는 함수는 소괄호 앞에 : 를 붙이고 반환데이터 타입명을 적어주시면 됩니다.
그리고 타 언어들과 동일하게 return 을 통해 값은 반환시키면 됩니다.
fun numberAdd(num1: Int, num2: Int): Int{
var num3 = num1 + num2
return num3
}
위 함수는 배개변수와 반환값이 있는 함수입니다. 위에 있던 함수들의 특징을 모아 놓은 것이니 따로 설명할 필요가 없을 거 같네요
fun oneLineFun(num1: Int, num2: Int) = num1 + num2
마지막으로 이 함수는 구조가 조금 다르게 생겼습니다.
이 함수도 코틀린의 특성인 간결하고 명확한 코드를 작성할 수 있도록 설계된 함수입니다.
간단한 1줄짜리 함수를 만들때 반환타입과 return과 {}를 작성하지 않고 함수를 생성할 수 있도록 만들어졌습니다.
반환타입은 타입추론을 통해 생략되며 return 은 = 을 이용해서 넘겨주는 형태입니다.
이상으로 함수 사용법에 대해 알아보았습니다.
끝까지 읽어주셔서 감사드립니다.
'kotlin(코틀린) 강좌' 카테고리의 다른 글
class 사용 (4) | 2024.09.16 |
---|---|
조건문, 반복문 (연산자) (2) | 2024.09.09 |
List, Set, Map 컬렉션(Collection) (0) | 2024.08.29 |
배열 기본 사용법 (0) | 2024.08.26 |
변수 (0) | 2024.08.22 |