1. 아래의 함수는 모두 동일

//type 1 (기본형)
fun sum(a: Int, b: Int): Int {
	return a+b
}

//type 2 (중괄호와 return 키워드 생략)
fun sum(a: Int, b: Int) : Int = a+b

//type 3 (중괄호와 return 키워드, 반환값 타입 생략)
fun sum(a: Int, b: Int) = a+b

 

2. 매개변수 기본값 설정하기 + 이름으로 인자값 지정하기

    private fun printInfo(name: String, mail: String = "no email", phone: String = "no phone") {
    	//mail과 phone은 인자를 생략하면 기본값이 들어가게 함
        println("name : $name / email : $mail / phone : $phone");
    }
printInfo("A", "test@test.com");
printInfo("B");
printInfo(name="C", mail="test2@test.com");
printInfo(name="D", phone="010-0101-0520");

위와 같은 코드를 실행시키면 결과는 아래와 같이 나옴

name : A / email : test@test.com / phone : no phone
name : B / email : no email / phone : no phone
name : C / email : test2@test.com / phone : no phone
name : D / email : no email / phone : 010-0101-0520

 

매개변수 갯수 때문에 오버로딩할 수고를 덜게 될지도...?

 

 

3. 열거형 매개변수를 사용하는 함수

private fun printNames(vararg names : String) {
    for(name in names) {
        println("name :: $name");
    };
}
printNames("A", "B", "C");
printNames("D", "E");

위의 코드를 실행시키면 결과는 아래와 같이 나옴

name :: A
name :: B
name :: C
name :: D
name :: E

 

'개발 > Kotlin' 카테고리의 다른 글

코틀린 공부 - 함수(3)  (0) 2021.08.02
코틀린 공부 - 함수(2)  (0) 2021.08.02
코틀린 기초 5 - object  (0) 2020.06.25
코틀린 기초 - 4(고차함수, 람다)  (0) 2020.06.24
코틀린 기초 - 3 (if~else, when)  (0) 2020.06.23

+ Recent posts