Skip to content

HayaUp/myKotlinNote

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 

Repository files navigation

myKotlinNote

Kotlinの書き方まとめ

IntelliJ EDEA Community Edition 2021.3

ステップイン・オーバー

変数の定義

  • valvarがある
val a = 1       // 値などの指定は1回のみ
a = 2           // Error

var b = 3       // 値などの指定は何回でも良い
b = 4

when式

val n = 1
val message = when {
    n == 1 -> "1だよ"
    else -> "何だろうね?"
}
println(message)                // 1だよ

val message2 = when(n) {
    is Int -> "Intだよ"
    else -> "何の型だろうね?"
}
println(message2)               // Intだよ

val r = 100
val message3 = when(r) {
    in 1 .. 200 -> "1~200 の値だね"
    else -> "測定不能"
}
println(message3)               // 1~200 の値だね

文字列型String

区切り文字による分割

val text = "123 456 789"
val textArray = text.split(" "))        // List<String>
println(textArray)                      // [123, 456, 789]

区切り文字による連結

val textArray = listOf("123", "456", "789")
val text = textArray.joinToString("/")
println(text)                                   // "123/456/789"

文字列検索

val text = "aAbBcC"
println(text.indexOf("a"))      // 0
println(text.indexOf("A"))      // 1
println(text.indexOf("c"))      // 4
println(text.indexOf("C"))      // 5
println(text.indexOf("Z"))      // -1

指定した文字列を含むか

val text = "aAbBcC"
println(text.contains("b"))     // true
println(text.contains("bB"))    // true
println(text.contains("Z"))     // false

コレクションList

  • Listは2種類ある
  • 変更不可listOf
  • 変更可能mutableListOf
val logs = mutableListOf<Int>(100)  // 初期値があれば型指定は不要
logs.add(200)                       // 要素を追加できる
println(logs)                       // [100, 200]
println(logs.size)                  // 2, コレクションの大きさが分かる

コレクションmap

反復

val m = mapOf("a" to 100, "b" to 200, "c" to 300)

for ((key, value) in m) {
    println("$key = $value")
}

反復

  • forforEachがある
val nList = listOf(100, 200, 300)

for (element in nList) {
    println(element)
}

nList.forEach {
    println(it)
}
  • forEach に index を使いたい場合
val nList = listOf(100, 200, 300)

nList.forEachIndexed {index, value -> println("[$index] = $value")}

指定した条件の要素を数える

val nList = listOf(100, 200, 300)
println(nList.count())                  // 3, 条件を指定しない場合、要素数を返す
println(nList.count {it > 100})         // 2

指定した条件の要素を取得する

val nList = listOf(100, 200, 300)
println(nList.filter {it > 100})        // [200, 300]

文字列の操作

区切り文字による分割

val message = "123 456 789"
val words = message.split(" ")      // split の第一引数に区切り文字を指定する
println(words)                      // [123, 456, 789]

コレクションの要素を区切り文字で連結

val words = listOf(1, 2, 3)
val message = words.joinToString("/")
println(message)                            // 1/2/3

About

Kotlinの書き方まとめ

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors