[Kotlin]Javaと比較してみる

Java

AndroidStudioで今後はKotlinを使っていくと決めたはいいものの、
やはりJavaとは記述が異なる部分が多いのでアプリ制作で調べたことの備忘録を残していきます。

スポンサーリンク

同じ様な処理の記述例

文字列”test”を戻す関数

Java

public String test(){
  return "test";
}

Kotlin

fun test() : String = "test"

コレクションのデータをStringBuilderへ設定

Java

public String toJSON(Collection<Integer> collection) {
        StringBuilder sb = new StringBuilder();
        sb.append("[");
        Iterator<Integer> iterator = collection.iterator();
        while (iterator.hasNext()) {
            Integer element = iterator.next();
            sb.append(element);
            if (iterator.hasNext()) {
                sb.append(", ");
            }
        }
        sb.append("]");
        return sb.toString();
    }

Kotlin

fun toJSON(collection: Collection<Int>): String {
    val sb = StringBuilder()
    sb.append("[")
    val iterator = collection.iterator()
    while (iterator.hasNext())
    {
        val element = iterator.next()
        sb.append(element)
        if (iterator.hasNext())
        {
            sb.append(", ")
        }
    }
    sb.append("]")
    return sb.toString()
}

名前付き引数とデフォルト値

メソッドのオーバーロードを用いる際
Java

public int test(int num1, int num2, int num3) {
    return num1 + num2 + num3;
}
public int test(int num1, int num2) {
    return foo(num1, num2, 50);
}
public int test(int num1) {
    return foo(num1, 10, 50);
}

Kotlin

fun test(num1: Int, num2: Int = 10, num3: Int = 50): Int =
        num1 + num2 + num3

//引数名を使って呼び出すときの記述
test(100,
     num3 = 200
)

ちょっと書き方が変わるだけで読み解くのにすごい時間かかってしまったり、
全然わからなかったりほんとプログラムって難しい。
今後も少しずつKotlinでの開発メモを残していきます。

コメント

タイトルとURLをコピーしました