Menu
Coddy logo textTech

맵 업데이트

Coddy Kotlin 여정의 논리와 흐름 섹션에 포함된 레슨. 63개 중 3번째.

mutableMapOf를 사용하면 대괄호 할당으로 항목을 추가하고 교체할 수 있습니다. remove(key)는 항목이 있으면 해당 항목을 삭제합니다. val은 변경 가능한 맵을 참조할 수 있습니다. 참조는 고정된 상태로 유지되지만 맵의 내용은 변경됩니다.

main 내부에서:

val counts = mutableMapOf("a" to 2)
counts["a"] = 5
counts["b"] = 3
println(counts.size)

a를 업데이트하면 값이 변경되고, b를 추가하면 두 번째 키가 생깁니다.

대괄호 할당은 누락된 키를 삽입하거나 기존 키의 값을 대체합니다.

challenge icon

챌린지

중급

stock: Map<String, Int>, key: String, amount: Int 매개변수를 사용하여 updatedStock을 완성하세요. stock을 변경 가능한 맵에 복사하고, 요청된 키를 amount로 설정한 다음 새로운 키 개수를 반환하세요.

위에서 더 엄격한 범위를 지정하지 않은 경우, 컬렉션은 각 수준에서 최대 100개의 요소를 포함하며, 정수 인수와 정수 컬렉션 값은 -1000에서 1000 사이입니다. 파싱을 위해 제공되는 텍스트에는 설명된 대로 유효하지 않거나 범위를 벗어난 표현이 포함될 수 있습니다.

Int 유형의 값을 반환하세요. 제공된 입력/출력 코드를 유지하세요. 이 코드는 스칼라 인수를 한 줄에 하나씩 읽습니다. 리스트는 개수와 그 뒤의 요소로 시작하며, 맵은 항목 개수와 그 뒤의 각 키 및 값으로 시작합니다. 중첩 리스트는 각 행에 대해 개수와 요소 형식을 반복합니다. 제공된 main은 반환값을 출력한 뒤 줄바꿈 하나를 출력합니다. 리스트는 Kotlin의 표준 대괄호 형식을 사용하며, 추가 레이블은 출력하지 마세요.

직접 해보기

fun updatedStock(stock: Map<String, Int>, key: String, amount: Int): Int {
    // 여기에 솔루션을 작성하세요.
    return 0
}
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()
    val amount = readln().toInt()
    println(updatedStock(stock, key, amount))
}
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

논리와 흐름의 모든 레슨

직접 연습해 보세요: Kotlin 플레이그라운드