Kotlin-関数
Kotlinは静的に型付けされた言語であるため、関数はその中で大きな役割を果たします。例全体で関数を使用しているため、関数についてはかなりよく知っています。関数はキーワード「fun」で宣言されています。他のOOPと同様に、戻り値の型とオプション引数リストも必要です。
次の例では、MyFunctionという関数を定義し、メイン関数からこの関数を呼び出して引数を渡します。
fun main(args: Array<String>) {
println(MyFunction("tutorialsPoint.com"))
}
fun MyFunction(x: String): String {
var c:String = "Hey!! Welcome To ---"
return (c+x)
}
上記のコードは、ブラウザに次の出力を生成します。
Hey!! Welcome To ---tutorialsPoint.com
関数は次のように宣言する必要があります-
fun <nameOfFunction>(<argument>:<argumentType>):<ReturnType>
以下は、Kotlinで使用できるさまざまなタイプの関数の一部です。
ラムダ関数
Lambdaは、関数を宣言して定義しながら、ボイラープレートコードを大幅に削減する高レベルの関数です。Kotlinを使用すると、独自のラムダを定義できます。Kotlinでは、ラムダを宣言し、そのラムダを関数に渡すことができます。
次の例を見てください。
fun main(args: Array<String>) {
val mylambda :(String)->Unit = {s:String->print(s)}
val v:String = "TutorialsPoint.com"
mylambda(v)
}
上記のコードでは、「mylambda」と呼ばれる独自のラムダを作成し、このラムダに1つの変数を渡しました。これは、String型で、値「TutorialsPoint.com」を含みます。
上記のコードは、ブラウザに次の出力を生成します。
TutorialsPoint.com
インライン関数
上記の例は、Kotlinアプリケーションで使用できるラムダ式の基本を示しています。これで、ラムダを別の関数に渡して、呼び出し元の関数をインライン関数にする出力を取得できます。
次の例を見てください。
fun main(args: Array<String>) {
val mylambda:(String)->Unit = {s:String->print(s)}
val v:String = "TutorialsPoint.com"
myFun(v,mylambda) //passing lambda as a parameter of another function
}
fun myFun(a :String, action: (String)->Unit) { //passing lambda
print("Heyyy!!!")
action(a)// call to lambda function
}
上記のコードは、ブラウザに次の出力を生成します。インライン関数を使用して、ラムダをパラメーターとして渡しました。その他の関数は、「inline」キーワードを使用してインライン関数にすることができます。
Heyyy!!!TutorialsPoint.com