Edited at

「初心者向け」JavaとKotlinの違い


Kotlinとは


  • Kotlinは、JetBrains社が作っているJVM上で動作する言語。

  • Kotlinは、Javaと完全に相互運用が可能である。あるクラスをJavaで書いて、それを継承したクラスを Kotlinで書いて、さらに継承したクラスをJavaで書くことができる。

  • Javaで書かれていたプロジェクトに、追加開発分だけ Kotlin で書くことでき、導入しやすい。

  • Google が Android での Kotlin 公式サポートを発表している言語である。


変数宣言

定数に対してはval、変更可能な変数に対したはvarを利用します。


test.java

String str = "文字列";

final int value = 0;


test.kt

var str: String = "文字列"

val value = 0

Kotlinでは型推論が可能なので型を省略して変数を定義することもできる。セミコロンは不要である。


if文


test.java

String value = bar < 10 ? "abc" : "xyz";



test.kt

 var value = if (bar < 10) "abc" else "xyz"


ifやelseブロック内の結果を直接代入することができます。


for文


test.java

for(int num : numbers)

{
System.out.println(num);
}
for(int i = 0; i< 4; i++)
{
System.out.println(i);
}


test.kt

for (num in numbers)

{
println(num)
}
for (i in 0..3)
{
println(i)
}

Kotlinはinを利用する。


関数


test.java

public int add(int a, int b) 

{
return a + b;
}
add(1,2);


test.kt

fun add(a:Int, b:Int): Int {

return a + b
}

// 呼び出し側
add(1,2)


Kotlinの場合、アクセス修飾子が省略された場合はpublic扱い。さらに、コンパイラーが型推論をできるような戻り値の型であれば、戻り値の型の定義を省略することも可能です。