맵 순회하기
Coddy GO 여정의 기초 섹션에 포함된 레슨 — 109개 중 92번째.
range 키워드는 맵의 모든 키-값 쌍을 반복할 수 있게 해줍니다. 각 항목에 대해 키와 값을 모두 반환합니다.
과일 재고 맵을 생성합니다:
inventory := map[string]int{
"apples": 5,
"bananas": 8,
"oranges": 12,
}
for fruit, quantity := range inventory {
fmt.Printf("%s: %d\n", fruit, quantity)
}결과는 각 키-값 쌍을 보여줍니다:
apples: 5
bananas: 8
oranges: 12키만 필요한 경우에는 두 번째 변수를 생략할 수 있습니다:
for fruit := range inventory {
fmt.Println(fruit)
}챌린지
초급이 챌린지에서는 Go의 range 키워드를 사용하여 맵을 순회하는 연습을 합니다. 학생 성적 맵이 이미 생성되어 있습니다. 여러분의 작업은 맵을 순회하며 각 학생의 이름과 성적을 출력하는 것입니다.
studentGrades 맵을 순회하고 각 학생의 이름과 성적을 Student: [name], Grade: [grade] 형식으로 출력하도록 코드를 완성하세요.
치트 시트
맵(map)의 키-값 쌍을 반복하려면 range를 사용하세요:
inventory := map[string]int{
"apples": 5,
"bananas": 8,
"oranges": 12,
}
for fruit, quantity := range inventory {
fmt.Printf("%s: %d\n", fruit, quantity)
}키만 반복하려면 두 번째 변수를 생략하세요:
for fruit := range inventory {
fmt.Println(fruit)
}직접 해보기
package main
import (
"fmt"
"sort"
)
func main() {
// 학생 성적의 map
studentGrades := map[string]string{
"Alice": "A",
"Bob": "B",
"Charlie": "B+",
"David": "A-",
"Eva": "C",
}
// 학생 이름(키)을 정렬하기 위해 slice에 수집
var names []string
for name := range studentGrades {
names = append(names, name)
}
sort.Strings(names)
// TODO: 정렬된 학생 이름 리스트를 반복문으로 순회
// 그리고 각 학생의 이름과 성적을 다음 형식으로 출력:
// "Student: [name], Grade: [grade]"
}
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
기초의 모든 레슨
2변수와 기본 자료형
변수란 무엇인가`:=`를 이용한 타입 추론정수 (int)부동 소수점 수불리언 (Booleans)문자열 (Strings)제로 값 (Zero Values)상수명명 규칙요약 - 변수와 타입