Kotlin-functions

提供:Dev Guides
移動先:案内検索

Kotlin-関数

Kotlinは静的に型付けされた言語であるため、関数はその中で大きな役割を果たします。 例全体で関数を使用しているため、関数にかなり精通しています。 関数はキーワード「fun」で宣言されています。 他のOOPと同様に、戻り値の型とオプション引数リストも必要です。

次の例では、MyFunctionという関数を定義し、メイン関数からこの関数を呼び出して引数を渡します。

fun main(args: Array<String>) {
   println(MyFunction("finddevguides.com"))
}
fun MyFunction(x: String): String {
   var c:String  = "Hey!! Welcome To ---"
   return (c+x)
}

上記のコードは、ブラウザに次の出力を生成します。

Hey!! Welcome To ---finddevguides.com

関数は次のように宣言する必要があります-

fun <nameOfFunction>(<argument>:<argumentType>):<ReturnType>

以下は、Kotlinで使用可能なさまざまなタイプの関数の一部です。

ラムダ関数

ラムダは、関数を宣言して定義すると同時に、ボイラープレートコードを大幅に削減する高レベル関数です。 Kotlinでは、独自のラムダを定義できます。 Kotlinでは、ラムダを宣言し、そのラムダを関数に渡すことができます。

次の例を見てください。

fun main(args: Array<String>) {
   val mylambda :(String)->Unit  = {s:String->print(s)}
   val v:String = "finddevguides.com"
   mylambda(v)
}

上記のコードでは、「mylambda」と呼ばれる独自のラムダを作成し、このラムダにString型で値「finddevguides.com」を含む1つの変数を渡しました。

上記のコードは、ブラウザに次の出力を生成します。

finddevguides.com

インライン関数

上記の例は、Kotlinアプリケーションで使用できる基本的なラムダ式を示しています。 これで、ラムダを別の関数に渡して、呼び出し元の関数をインライン関数にする出力を取得できます。

次の例を見てください。

fun main(args: Array<String>) {
   val mylambda:(String)->Unit  = {s:String->print(s)}
   val v:String = "finddevguides.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!!!finddevguides.com