ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Golang] map
    언어/Golang 2020. 2. 9. 18:54

    map은 key:value로 이루어져 key에 대응하는 value를 찾는 해시 테이블을 구현한 자료구조입니다. 

    선언하는 방법은 아래와 같습니다.

    package main
    
    
    func main() {
       var a map[int]string // nil값을 가지므로 (Nil Map) 어떤 값도 선언할 수 없음. make()를 사용해 map을 초기화 해줘야 사용 가능
       a = make(map[int]string)
       a[1] = "test"
    
       //{} 내부에 값을 바로 선언 가능
       b := map[int]string {
          1: "test",
       }
    
       c := make(map[int]string)
       c[1] = "test"
    
       println(a[1])
       println(b[1])
       println(c[1])
    }


    아래는 map 타입의 변수에 값 체크 및 선언, 삭제, 출력을 하는 예제입니다.

    package main
    
    import "fmt"
    
    func main() {
       a := map[int]string {
          1: "test",
          2: "test2",
       }
       // 값 재정의 및 선언
       a[3] = "test3"
       // 해당 map에 key가 존재하는지 확인
       val, exists := a[3]
       fmt.Println(val, exists) // test3 true
    
       // key 삭제
       delete(a, 3)
    
       val, exists = a[3]
       fmt.Println(val, exists) // 블랭크 false
    
    
       // map 내부 전체 출력
       for key, val := range a {
          fmt.Println(key, val)
       }
    }


    댓글