キーの確認
CoddyのKotlinジャーニー「ロジックとフロー」セクションの一部。レッスン 4/63。
containsKeyはキーが存在するかどうかを確認します。containsValueは代わりに値を検索します。key in mapによるメンバーシップ確認もキーを確認します。キーと値のテキストが同じ場合でも、これらの質問を区別してください。
mainの中:
val codes = mapOf("red" to "R")
println("R" in codes)Rは値であり、キーではありません。唯一のキーはredです。
キーには containsKey または in を使用し、値には containsValue を使用します。
チャレンジ
中級パラメーター stock: Map<String, Int>、key: Stringを指定して、keyExistsを完成させてください。格納されている値がゼロの場合も含め、key が存在するかどうかを返してください。
上記でより厳しい範囲が指定されていない限り、コレクションは各レベルで最大100個の要素を含み、整数の引数および整数コレクションの値は -1000 から 1000 の範囲です。解析用に提供されるテキストには、説明されているように、無効な表現や範囲外の表現が含まれる場合があります。
型 Boolean の値を返してください。提供されている入力/出力コードはそのまま使用してください。スカラー引数は1行に1つずつ読み取られます。リストは個数の後に要素が続く形式で始まり、マップはエントリ数の後に各キーと値が続く形式で始まります。ネストされたリストでは、各行について個数と要素の形式が繰り返されます。提供されている main は、戻り値の後に改行を1つ出力します。リストには Kotlin 標準の角かっこ形式を使用し、追加のラベルは出力しないでください。
自分で試してみよう
fun keyExists(stock: Map<String, Int>, key: String): Boolean {
// ここに解答を書いてください。
return false
}
fun main() {
val stockCount = readln().toInt()
val stock = mutableMapOf<String, Int>()
for (i0 in 0 until stockCount) {
val stockKey = readln()
val stockValue = readln().toInt()
stock[stockKey] = stockValue
}
val key = readLine().orEmpty()
println(keyExists(stock, key))
}このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
ロジックとフローのすべてのレッスン
自分で練習してみよう: Kotlinプレイグラウンド