<구글이 알려주는 앱 개발 무료 강의>
[코틀린으로 배우는 안드로이드 기초]
8. 함수 - 인수(입력 값) 보내기 in 코틀린
안녕하세요. dylan입니다.
오늘 강의는 함수(fun) 사용 시 인수(입력 값)를 보내는 방법에 대해서 배워보겠습니다.
(구글 개발 강의 출처)
코틀린 기초 → 코틀린 소개 → Kotlin에서 생일 메시지 만들기
먼저 요약과 우리가 작성할 코드를 보겠습니다.
강의 요약
- 함수에 인수(입력 값)을 보내는 방법을 배웁니다.
- 인수를 2가지로 보내는 방법을 배웁니다.
강의 코드
fun main() {
val name = "재석"
val border = "%"
val timesToRepeat = 20
printBorder(border,timesToRepeat)
println(" 생일 축하해, ${name}!")
printBorder(border,timesToRepeat)
}
fun printBorder(border : String, timesToRepeat : Int) {
repeat(timesToRepeat) {
print(border)
}
println()
}
출력 결과
인수를 사용하여 테두리 변경하기
이전에 배웠던 함수를 잘 사용하면 가독성도 좋고, 유지보수에 용이하다고 배웠습니다.
이 함수에 반복문 처럼 특정 값을 보내서 처리하여, 같은 함수에서 다른 결과 값을 얻을 수 있습니다.
바로 인수인데요. 인수는 입력 값을 함수를 사용할 때 보내는 것입니다.
저번시간까지 배운 코드
fun main() {
val name = "재석"
printBorder()
println(" 생일 축하해, ${name}!")
printBorder()
}
fun printBorder() {
repeat(20) {
print("=")
}
println()
}
자 저번 시간까지 배운 내용인데요. 먼저 main 함수에서 수정할 부분을 보겠습니다.
인수 사용
1. 먼저 border라는 변수를 만듭니다.
val border = "%"
2. 그리고 함수 printBorder 괄호 () 안에 border 변수를 배치하면 됩니다.
fun main() {
val name = "재석"
val border = "%"
printBorder(border)
println(" 생일 축하해, ${name}!")
printBorder(border)
}
인수 정의(선언)
fun printBorder(border: String) {
repeat(20) {
print(border)
}
println()
}
- 함수 옆 괄호 ()에 인수를 선언합니다.
- border는 인수(입력 값) 이름입니다.
- 이름 뒤 콜론 : 이 옵니다.
- String 은 인수의 종류나 유형을 나타냅니다.
- "printBorder 함수는 border라는 '문자' 입력 값을 받는 함수"라는 뜻입니다.
- 그리고 print("=")을 print(border)로 변경합니다.
그리고 프로그램을 한번 실행해 보겠습니다.
출력 결과
지금 까지 우리는 함수를 이용하여 배너를 만드는 코딩을 리팩터링 해봤는데요.
오늘 배운 내용으로 배너의 모양을 인수로 받아서 자유자재로 바꾸는 함수를 구현해 보았습니다.
.
.
.
자, 그럼 배너의 개수까지도 입력받아서 표시하려면 어떻게 해야 할까요?
.
.
.
다음과 같이 하면 됩니다.
코틀린 코드
fun main() {
val name = "재석"
val border = "%"
val timesToRepeat = 20
printBorder(border,timesToRepeat)
println(" 생일 축하해, ${name}!")
printBorder(border,timesToRepeat)
}
fun printBorder(border : String, timesToRepeat : Int) {
repeat(timesToRepeat) {
print(border)
}
println()
}
출력 결과
두 개의 인수 사용
1. 먼저 timesToRepeat라는 변수를 만듭니다. (숫자는 입력 값에 " "를 넣지 않습니다.)
val timesToRepeat = 20
2. main()에서 printBorder()를 호출할 때 반복 횟수를 두 번째 인수로 추가합니다. 두 인수를 쉼표로 구분합니다.
printBorder(border, timesToRepeat)
두 개의 인수 정의(선언)
fun printBorder(border : String, timesToRepeat : Int) {
repeat(timesToRepeat) {
print(border)
}
println()
}
- 쉼표는 두 인수를 구분합니다.
- timesToRepeat는 인수의 이름입니다.
- 그다음에 콜론 : 기호가 옵니다.
- 유형: Int. timesToRepeat는 숫자이므로 String 유형이 아니라 정수의 약자인 Int 유형으로 만들어야 합니다.
- printBorder() 내에서 숫자 20 대신 timesToRepeat 인수를 사용하도록 repeat를 변경합니다.
한 함수에서 받을 수 있는 인수는 1개, 2개뿐만 아니라 더 많이 받을 수 도 있습니다. 벌써 함수와 인수 변수, 반복문을 배움으로, 프로그램에서 사용하는 기본적인 구성요소를 알아봤습니다.
자 오늘도 마지막 숙제를 드릴게요. 답은 비밀 댓글로 달아주세요^^!
배너의 모양을 아래와 같이 바꾸려면 어떻게 해야 할까요?
출력 결과
(힌트) 반복되는 구간을 찾으세요.
감사합니다.
이상으로 강의를 마치겠습니다.
'프로그래밍 > Kotlin' 카테고리의 다른 글
[코틀린/Kotlin] 가이드맵 - 안드로이드 앱 개발 무료 강의, 강좌 (0) | 2024.04.19 |
---|---|
9. 함수 응용 및 중첩 반복문 (안드로이드 코틀린 앱 개발) (0) | 2022.04.13 |
7. 반복문 - repeat (구글이 알려주는 안드로이드 코틀린 앱 개발) (0) | 2022.04.11 |
6. 함수 - fun (구글이 알려주는 안드로이드 코틀린 앱 개발) (0) | 2022.04.07 |
5. 변수 - val, var (구글이 알려주는 안드로이드 코틀린 앱 개발) (0) | 2022.04.05 |
댓글