아래는 두 정수를 받아 더 큰 정수를 반환하는 자바 코드 입니다.
코틀린에서는 아래처럼 한줄로 작성 가능합니다.
=을 사용하는 경우 반환 타입 생략 가능
block { } 을 사용하는 경우에는 반환 타입이 Unit이 아니면,
명시적으로 작성해주어야 합니다.
함수는 클래스 안에 있을 수도, 파일 최상단에 있을 수도 있습니다.
또한, 한 파일 안에 여러 함수들이 있을 수도 있습니다.
다음은 주어진 문자열을 N번 출력하고 필요하다면 개행을 하는 자바 코드 입니다.
많은 코드에서 userNewLine에 true를 사용하면 조금 번거로울 수 있다.
따라서 오버로딩(OverLoading) 활용할 수 있었다.
많은 코드에서 출력을 3회씩 사용하고 있다면? 다시 한 번 오버로딩! 총 3개의 함수가 존재하게 된다. 그렇다면 정녕 메소드를 3개나 만들어야 하나?
따라서 코틀린에서는 다음과 같은 defaultparameter 가 존재한다.
(밖에서 파라미터를 넣어주지 않으면 기본값을 사용하자!)
자바스크립트에서도 동일한 개념이 있다.
그렇다면 repeat을 호출할 때, num은 3을 그대로 쓰고 useNewLine은 false를 쓰고 싶다. 어떻게 할까 ?
매개변수 이름을 통해 직접 지정, 지정되지 않은 매개변수는 기본값을 사용하게 된다.
이렇게 사용하면 builder를 직접 만들지 않고 builder의 장점을 가지게 된다.
또한 Kotlin에서 Java 함수를 가져다 사용할 때는 named argument를 사용할 수 없다.
아래는 문자열을 N개 받아 출력하는 자바 코드 이다.
사용은 배열을 직접 넣거나, comma를 이용해 여러 파라미터를 넣거나 하였다.
코틀린에서는 아래처럼 사용가능 하다.
사용은 아래처럼 사용한다.
다음은 클래스를 다루는 방법에 대해 공부하며 포스팅 해보겠습니다.