함수(fun, 파라미터)
*함수(fun, 파라미터)
-코드를 사용할 수 있는 최소 단위, 모든 코드는 함수 안에서 작성해야 하고 코드의 실행은 함수를 호출하는 것에서 시작됨
--fun 키워드 : 함수의 정의
--함수 파라미터 : 변수를 정의하듯이 (이름 : 타입)의 형태로 정의
*함수의 정의
-fun 키워드로 정의
-파라미터 : 값을 입력받아 사용할 수 있는 잆력된 값을 기술한 것,
fun 함수명(파라미터 이름 : 타입) : 반환타입 {
return 호출한 곳에 반환하는 값
}
-파라미터와 반환값이 없을 경우에 둘 다 작성하지 않음(ex. Log.d() 함수가 대표적)
-(파라미터 이름 : 타입) 은 (변수명 : 타입)과 동일
*함수의 사용
-함수명뒤에 괄호를 붙여 명령어 실행
함수명(값)
-반드시 괄호를 붙여서 실행해야하며 괄호를 붙이지 않으면 값처럼 인식함
*반환값과 입력값이 있는 함수 정의와 호출
-Int 타입의 x라는 입력 파라미터를 갖고 반환값으로 입력값 제곱식을 받는 함수 sqaure()정의
-sqaure()함수가 호출되고 입력값을 주면 x파라미터에 저장되고 함수 안에 있는 return(반환값)코드 실행
-실행된 코드의 값은 호출한 측으로 반환하고 실행 종료
*반환값이 없는 함수의 정의와 호출
-반환값 없이 입력값을 받아 Log로 출력하는 함수 printSum()정의
*입력값 없이 반환값만 있는 함수의 정의와 호출
-호출한 측으로 반환값을 반환하고 실행 종료하는 함수 getPi()정의
*함수 파라미터
-변수를 정의하듯 (이름:타입)의 형태로 정의
-여러개의 파라미터가 정의될 경우 콤마(,)로 구분함
-코틀린에서 함수파라미터를 통해 입력되는 모든 값은 이뮤터블(변하지 않는 값), 모두 읽기전용 키워드 val이 생략된 형태라고 볼 수 있음
-함수명 뒤에 괄호() 안 코드들을 파라미터라고 함
fun 함수명 ( (val생략) 이름1 : 타입, 이름2 : 타입 ) {
실행코드
}
*파라미터의 기본값 정의와 호출
-파라미터의 기본값을 가지는(두 번째, 세 번째 파라미터) 함수 정의
-newFunction() 함수를 호출할 때 기본값이 없는(첫 번째 파라미터) 파라미터값을 입력하면 나머지 기본값을 가지고 있는 파라미터는 자동으로 입력됨
*파라미터 이름으로 값 입력
-순서와 상관없이 정의된 파라미터의 이름을 이용해서 직접 값을 입력할 수 있음
-위에서 정의한 newFunction() 함수 호출하여 파라미터의 이름을 이용해 값 입력
Q. 1개의 Int타입 입력 파라미터를 가지고 0부터 입력된 값까지 순서대로 모두 더한 후에 반환하는 함수작성하기
fun sum ( x : Int ) {
var result = 0
for( num in 0 .. x ) {
result += num
}
return result
}
이 포스팅에 작성한 내용은 고돈호, ⌜이것이 안드로이드다⌟, 한빛미디어(주), 2022 에서 발췌하였습니다.