【プログラミング】【Kotlin】Kotlin - j-komatsu/myCheatSheet GitHub Wiki
Kotlin(ことりん)
ロシアのJetBrains社によって開発された静的型付けのプログラミング言語。
Javaとの互換性が高く、Android開発などを中心に急速に普及しています。
項目 | Kotlin | Java |
---|---|---|
開発元 | JetBrains | Oracle(元Sun Microsystems) |
誕生年 | 2011年 | 1995年 |
コードの簡潔さ | 高い | 長くなりがち |
Null安全 | サポートあり(Nullable型) | 明示的にnullチェックが必要 |
拡張関数 | あり | なし |
Android公式対応 | 〇(2017年より) | 〇 |
Java
public class Main {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
Kotlin
fun main() {
println("Hello, World!")
}
Kotlinでは fun main()
のように、Javaの public static void main(String[] args)
のような修飾子が不要です。
これはKotlinが トップレベル関数(クラスに属さない関数) をサポートしており、
Kotlinコンパイラが自動的に public static void main
相当のメソッドとして変換してくれるからです。
要素 | Java | Kotlin |
---|---|---|
public | 明示が必要 | デフォルトでpublic |
static | 必須 | トップレベル関数として暗黙的にstatic相当 |
void | 明示が必要 | Unit型(省略可) |
String[] args | 必須 |
args: Array<String> で受け取り可 |
fun main(args: Array<String>) {
println("引数: ${'$'}{args.joinToString()}")
}
🔹 Kotlinは「必要な修飾子は裏で補ってくれる最新の電動アシスト自転車」みたいな存在!
Javaは昔からある「ギア付き自転車」で、しっかりとした構造と安定性があります。 Kotlinは「電動アシスト付き自転車」のようなもので、 安全性(Null安全)や機能性(拡張関数)が標準装備されています。
var name: String? = null // Nullableな変数
println(name?.length) // セーフコール
fun String.hello(): String = "Hello, $this"
println("World".hello()) // Hello, World
data class User(val name: String, val age: Int)
val user = User("Taro", 30)
println(user)
val x = 3
val msg = when (x) {
1 -> "One"
2 -> "Two"
else -> "Other"
}
import kotlinx.coroutines.*
fun main() = runBlocking {
launch {
delay(1000L)
println("World!")
}
println("Hello,")
}
plugins {
kotlin("jvm") version "1.9.0"
}
dependencies {
implementation(kotlin("stdlib"))
}
flowchart TD
A[Kotlinファイル作成] --> B[main関数定義]
B --> C[処理実装]
C --> D[ビルド実行]
D --> E[出力結果表示]
特徴 | 説明 |
---|---|
Java互換 | Javaライブラリ・コードと共存可能 |
コンパクト | ボイラープレートコードが少ない |
型推論 |
val x = 10 のように型の明示が不要 |
Null安全 | セーフコール、Elvis演算子でNPEを防止 |
関数型サポート | 高階関数、ラムダ式が自然に書ける |
fun greet(name: String): String {
return "Hello, $name!"
}
fun main() {
val output = greet("Kotlin")
println(output)
}
入力: "Kotlin"
出力: Hello, Kotlin!
KotlinはJava開発者にとって学習コストが低く、現代的な機能を備えた柔軟な言語です。
Androidだけでなく、サーバーサイドやWeb開発にも対応可能で、今後さらに拡大が見込まれます。