0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Kotlin を基本からまとめてみた【入門】

Last updated at Posted at 2025-11-12

Kotlinとは?

  • 2011年にJetBrains社が公開したプログラミング言語
  • 2017年にGoogleがAndroid開発の公式の言語に追加
  • JVM系言語
  • オブジェクト指向言語
  • モダンな言語

基本構文

画面出力・四則演算・文字列結合

lesson1.kt
fun main(){
    //画面出力
    println(100)
    println("Hello")
    println("Hello/nWorld")

    //四則演算
    println(10 + 2)
    println(10 - 2)
    println(10 * 2)
    println(10 / 2)
    println(10 % 2)

    //文字列結合
    println("Hello + World")

}

変数・定数

lesson2.kt
fun main(){

    //変数
    var num = 10
    println("num = $num")    
    println(num::class)

    var str = "Hello"
    println("str = $str")
    println(str::class)

    num = 20
    println(num)

    val x = 20
    x = 20
}

データ型・型推論

lesson3.kt
fun main(){
    //型推論 : 代入する値で自動的にデータ型を識別する
    val x = 10
    val y = 1.0
    val z = "Hello"
    println("x = ${x::class}")
    println("y = ${y::class}")
    println("z = ${z::class}")
    //整数
    val num1:Int = 10 //32bit
    val num2:Long = 10 //64bit
    val num3:Short = 10 //16bit
    val num4:Byte = 10 //8bit
    //小数
    val num5:Float = 1.0f //32bit
    val num6:Double = 1.0 //64bit
    //整数符号なし
    val num: UByte = 127U
    //新数表現
    val num = 0xF0
    val num1 = 0b11110000
    //文字列、文字
    val str: String = "Hello"
    val ch: Char = 'H'
    //真偽値
    val bool: Boolean = true
    //Any
    var any: Any = 10
    any = "Hello"

}

型変換メソッド

lesson4.kt
fun main(){

    val x: Int = 10
    val y: Long = x.toLong()
    
    val d: Double = x.toDouble()
    val f: Float = d.toFloat()

    println(y)
    println(d)
    println(f)

    val dd = 1.6
    val i:int = dd.toInt()
    println(i)

}

null安全性・null許容型・null非許容型

lesson5.kt
fun main(){

    val str: String? = null

    // !!
    val list: MutableList<String?> = mutableListOf(10, 20, 30)
    val num: Int? = list.min()

    // スマートキャスト
    if(num != null){
        println(num * 2)
    }
    // !!
    val num2: Int = num!!
    println(num2 * 2)
}

配列

lesson6.kt
fun main(){

    //配列
    val array:Array<Int> = arrayOf<Int>(10, 20, 30)
    println(array[0])
    println(array[1])
    println(array[2])

    val array1 : intArray = intArray(10, 20, 30)
    println(array1[0])
    println(array1[1])
    println(array1[2])

    val array2 = doubleArrayOf(10.0, 20.0, 30.0)
    println(array2[0])
    println(array2[1])
    println(array2[2])

    val array3: Array<String?> = arrayOfNulls<String>(3)
    array3.foreach { println(it) }

    }

コレクション

  • コレクション : 複数の値(要素)をまとめて扱う
  • 可変長(配列は固定長)

リスト

  • リスト : 順番の概念を持つ
lesson7.kt
fun main(){

    val list: MutableList<Int> = mutableListOf(10, 20, 30)
    println(list[0])

    //変更
    list[0] = 100
    println(list[0])

    //追加
    list.add(40)
    println(list)

    list.add(0, 500)
    println(list)

    //削除
    list.removeAt(0)
    println(list)

    list.removeAt(100)
    println(list)
}

セット

  • セット : 順番の概念がなく、要素の重複を許可しない
lesson8.kt
fun main(){
    val set: MutableSet<Int> = mutableSetOf(10, 20, 30)
    println(set)
    //追加
    set.add(40)
    println(set)
    //削除
    set.remove(10)
    println(set)
}

マップ

  • マップ : キーと要素をセットで管理する・キーの重複を許可しない
lesson9.kt
fun main(){

    val map:MutableMap<String, String> = mutableMapOf<String, String>(
        "orange" to "みかん",
        "apple" to "りんご",
        "peach" to "もも"
    )
    
    //変更
    map["apple"] = "りんご"
    println(map)
    //追加
    map["banana"] = "バナナ"
    println(map)
    //削除
    map.remove("peach")
    println(map)

}

制御フロー

if式

lesson10.kt
fun main(){
    //条件分岐
    if(true){
        println(true)
    } else {
        println(false)
    }

    val num = 120

    if(num > 100){
        println("num > 100")
    } else if(num > 50){
        println("num > 50")
    } else {
        println("num == 100")
    }
}

when式

lesson11.kt
fun main(){

    val num = 5

    when(num) {
        5 -> println("num = 5")
        6, 7 -> println("num = 6 or 7")
        in 8..10 -> println("num between 8 ~ 10")
        !in 11..15 -> println("num not between 11 and 15")
        else -> {
            println("その他")
            println("当てはまりません")
        }
    }

    val num: Any = 50.0
    when(num){
        is Int -> println("Int")
        is Double -> println("Double")
        is String -> println("String")
    }

    when str:Any = when(num){
        5 -> "num = 5"
        6, 7 -> "num = 6 or 7"
        in 8..10 -> "num between 8 ~ 10"
        !in 11..15 -> "num not between 11 and 15"
        else -> {
            println("その他")
            "当てはまりません"
        }
    }
    println(str)
}

whenループ・do-whileループ

lesson12.kt

参考サイト

Kotlin プログラミング入門講座【Java 知識不要の初心者コースで基礎知識を学ぼう!】

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?