2017-04-01から1ヶ月間の記事一覧

kotlin小ネタ:coding conventions メモ

実際のコーディングで考察した内容を五月雨式にメモ。おいら自身が理解できればOKという最低限の記述。出そろってきたら整理しましょう。 kotlin とか coding conventions とか無関係なメモになってるっすね、、、(´・ω・`) 演算子の優先順位を等価とみなし…

kotlin小ネタ:code arrangement rule メモ

kotlin の code arrangement に関するおいらの独自ルールメモ。IntelliJ IDEA の kotlin の rearrange code 機能については中の人が 2016-11-21付で以下のような回答をしてるので、実装は気長に待つのが良さそうですね。stackoverflow.com以下おいら独自ルー…

kotlin小ネタ:forEach から break っぽいことを行う

このようなコードを無理やり forEach でやろうと思った場合、 for (v in 0..1) { println(v) break } こんな感じになる。 // forEach からの break っぽいことを行う例 fun main(args: Array<String>) { fun foo() { // label は expression に設定する必要があるの</string>…

kotlin小ネタ:elvis operator から return する際ににまとまった処理を書きたい場合

// elvis operator, return, closure の実行値, という組み合わせ。 // この例では return で f2() の値が返る。 val value = next() ?: return run { f1(); f2() } // これでも大丈夫。 val value = next() ?: return { f1(); f2() }()

kotlin小ネタ:expression の値が null の場合のみ expression の値を変えずに処理を行う例

// オリジナル val currentValue = nextValue() if (currentValue == null) finish() // 等価コード1 val currentValue = nextValue().apply { if (this == null) finish() } // 等価コード2 val currentValue = nextValue() ?: { finish(); null }() elvis …

kotlin小ネタ:ある値が null の場合は null を、そうでない場合にはその値を用いて初期化された値を取得するサンプル

class Sample { private var mStringBuilder: StringBuilder? = null // letters が null の場合は null を、そうでない場合は letters.length で初期化された StringBuilder を生成する fun init(letters: String?) { mStringBuilder = letters?.let { Stri…