티스토리 뷰
코틀린에서 함수 선언할 때 fun 키워드를 함수 이름 앞에 지정
함수의 매개변수는 변수이름:타입 의 형태로 지정
함수에서 반환하는 값의 타입은 함수 정의 문장 끝에 :을 추가한 후 지정
Ex)
1.
fun mySum(value1 : Int, value2 : Int): Int{
return if(value1 !=10 && value2 !=10 ) value1+value2 else 0
}
2.
fun mySum(vlaue1 : Int, value2 : Int) = if(value1 !=10 && value2 !=10) value1+value2 else 0
코틀린에서 if는 표현식(값을 산출하여 반환하는 것)으로 간주되므로 대입문 뒤에 바로 추가 할수있다.
가변인자 사용
vararg 키워드를 사용하여 가변 인자들을 배열로 전달
Ex)
fun newList(vararg ls: T):List{
val result = ArrayList()
for (t in ls)
result.add(t)
return result
}
fun main(){
val a = arrayOf(4,5,6)
val list = newList(1,2,3,*a,7)
println(list)
}
* 확산연산자 : 배열의 요소를 하나씩 가져와 인자로 전달한다.
멤버 함수
클래스에서 함수를 선언
Ex)
class Myclass()
{
fun className(value : String):String {return value}
}
fun main(){
val newclass = Myclass()
println(newclass.className("pro"))
}
지역 함수
함수안에서 함수를 선언
Ex)
fun mySumAndMinusOne(value1 : Int, value2 : Int): Int{
var total : Int = value1 + value2
fun myMinusOne(num : Int):Int{
var totalMinusOne = num
return totalMinueOne-1
}
return myMinusOne(total)
}
fun main(){
println(mySumAndMinusOne(5,5))
}
제네릭함수
Ex)
fun <T> newList(vararg ls : T) : List<T> {}
확장함수
Ex)
class Mycar()
fun getPrice() : int {
retun 10
}
fun Mycar.getName() : Mycar{
println("SuperCar")
return this
}
fun main(){
val car = Mycar()
println(car.getName().getPrice())
}
결과 값 = SuperCar 10
재귀함수
반복해서 실행해야 하는 알고리즘의 경우 사용
Ex)
tairectailrec fun calcNumber(num: Int) : Int{
if(num ==1) {
return 1
}else{
return (num * calcNumber(num -1))
}
}
fun main(){
println(calcNumber(5))
}
결과 값 = 120 (5*4*3*2*1)
'코틀린' 카테고리의 다른 글
#11 클래스 멤버 함수 (0) | 2019.07.23 |
---|---|
#10 코틀린 클래스 (0) | 2019.07.21 |
#8 코틀린 연산자 (0) | 2019.07.15 |
#7 코틀린 배열 (0) | 2019.07.15 |
#6 코틀린 기본 타입의 리터럴 (0) | 2019.07.15 |
- Total
- Today
- Yesterday
- Unity2D
- 유니티 플레이어 캐릭터
- inheritance
- nestjs socket connection
- 상속
- 자바
- nest js
- 유니티
- 코틀린
- 리액트
- react
- 유니티 개발
- nest
- 함수
- Linux
- JavaScript
- JVM
- object
- 오버라이딩
- Kotlin
- 자바스크립트
- Java
- 유니티 게임개발
- 유니티 게임 개발
- 유니티 캐릭터
- 리눅스
- Unity
- 유니티 실습
- Transform
- 클래스
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |