Kotlin

Qiitaでことりん学習帳を発売しています!

無名関数とは

無名関数とはその名の通り、名前をつけない関数のこと。ラムダ関数のように使える。違う点は、無名関数はreturn文が必要。だが省略記法もある。

//ラムダ式va ...

Kotlin

Qiitaでことりん学習帳を発売しています!

Golangでのクロージャの通り、「ローカル変数内を参照している関数内の関数」のこと。相変わらずわかりづらい説明なので、実例で。

実際に書いてみる//クロージャfun c ...

Kotlin

Qiitaでことりん学習帳を発売しています!

ラムダ関数とは

ラムダ関数とは、関数を定義して関数オブジェクトを生成するのではなく、関数オブジェクトを直接生成する機能。定義の仕方は以下の例の通り。

//標準的なラムダ関数 ...

Kotlin

Qiitaでことりん学習帳を発売しています!

高階関数とは

高階関数とは、関数を引数として受け取ったり、返り値として関数を返したりする関数のこと。同じような機能を持った関数を複数書いてしまう場合に、共通する部分は抽象的に一つ ...

Kotlin

Qiitaでことりん学習帳を発売しています!

関数オブジェクトとは

Kotlinは、関数を他の数値や文字列と同じように変数に代入したり、他の関数の引数として与えたり、関数の結果として与えることができる。関数オブジェクトとして ...

Kotlin

Qiitaでことりん学習帳を発売しています!

Not 値を返さない関数

ただprintするだけの関数など、特に値を返さない関数があるが、KotlinではUnitと呼ばれる型を明記はしていないものの返している。
Uni ...

Kotlin

Qiitaでことりん学習帳を発売しています!

ローカル関数とは

ローカル関数とは関数内に設置する関数のこと。ローカル関数の使い所は、その関数内でしか使わないような関数など、スコープを制限したい時に使う。

ローカル関数の ...

Kotlin

Qiitaでことりん学習帳を発売しています!

可変長の引数の定義の仕方

可変長の引数は、引数名の前に vararg をつけて以下のように定義する。

fun 関数名(vararg 引数名: 引数の型): 返り値の型 {} ...

Kotlin

Qiitaでことりん学習帳を発売しています!

引数名を指定すれば引数の順番が異なっても問題ないし、デフォルトの引数も指定できる。
他の言語を触ったことのある人であれば目新しさは特にないので、さらっと。

実際に ...

Kotlin

Qiitaでことりん学習帳を発売しています!

Kotlinでの関数の定義の方法は2つあり、一つは簡単なワンライナーで各方法と、もう一つは一般的な文を含む関数の定義の方法。

ワンライナーの定義の方法は次

Kotlin

Qiitaでことりん学習帳を発売しています!

イテレータを持ったオブジェクトは、nextメソッドとhasNextメソッドの2つのメソッドを定義していれば実装できる。
nextメソッドとhasNextメソッ

Kotlin

Qiitaでことりん学習帳を発売しています!

while文、do-while文の書き方

while文の書き方は、

while(条件){//ループ文}

で、do-while文は

do{ ループ文}wh

Kotlin

Qiitaでことりん学習帳を発売しています!

for文の書き方

for文の書き方は、

for (変数名 in イテレータを提供するオブジェクト){//ループ内処理}

という説明をしても伝わらないかもしれな

Kotlin

Qiitaでことりん学習帳を発売しています!

when文についての感想

Kotlinの中でもwhen文は強力。C言語などでのswitch文はそれほど使う気にはならないけれど、when文はめちゃめちゃ使える(小並感)

Kotlin

Qiitaでことりん学習帳を発売しています!

if文は至って普通なので、三項演算子(死語?)だけ。

条件をつけて代入したいときに、次のようにかける。

var result = if (条件) "