Scroll Top

GOLANG – 맵

GO

맵은 key 에 값을 지정하는 자료형이다.
맵을 만들때는 make 함수를 사용해야 하며 제로값은 nil 이다.
또한 맵의 키를 제거하려면 delete 함수를 사용하면 된다.

package main
import "fmt"

func main() {
        maps := make(map[string]int)

        maps["key1"] = 10 // 맵에 키와 값 입력
        maps["key2"] = 20

        fmt.Println("맵의 모든 값 출력 : ", maps)
        fmt.Println("맵의 쌍의 개수 출력 : ", len(maps))

        delete(maps, "key1") // key1 삭제

        fmt.Println("맵의 모든 값 출력 : ", maps)
        fmt.Println("맵의 쌍의 개수 출력 : ", len(maps))

        value1 := maps["key2"]
        fmt.Println("맵의 값 : ", value1)

        m := map[string]int{"value1": 10, "value2":20} // 맵의 한줄 선언
        fmt.Println("맵의 모든 값 출력 : ", m)

        value, data :=  m["value1"]
        fmt.Println("value1의 값은 ", value, "존재함? ", data)

        value, data = m["value3"]
        fmt.Println("value3의 값은 ", value, "존재함? ", data)

        _, data = m["value2"] // 값을 가져올 때 두번째 값은 맵에 해당 값이 있는지 여부를 반환해줌
        // 값이 필요 없고 존재 여부만 확인이 필요할 경우 공백식별자(Blank indentifier)인 언더바 _ 를 사용
        fmt.Println("value2는 존재함? ", data)

}
┌──(daleji㉿DESKTOP)-[~]
└─$ go run map.go
맵의 모든 값 출력 :  map[key1:10 key2:20]
맵의 쌍의 개수 출력 :  2
맵의 모든 값 출력 :  map[key2:20]
맵의 쌍의 개수 출력 :  1
맵의 값 :  20
맵의 모든 값 출력 :  map[value1:10 value2:20]
value1의 값은  10 존재함?  true
value3의 값은  0 존재함?  false
value2는 존재함?  true

Related Posts

Leave a comment

You must be logged in to post a comment.