Golang, map 예제
Go 언어의 map 데이터형은 파이썬 사전(dict) 데이터형과 비슷하지만,
키나 값의 데이터형은 고정으로 지정해야 합니다.
package main
import "fmt"
func main() {
m := make(map[string]int) // make(map[키타입]값타입)
m["하나"] = 0
m["둘"] = 2
fmt.Println(m)
fmt.Println(m["하나"])
m["하나"] = 1
fmt.Println(m["하나"])
pw := map[string]string{"sysop": "1234!", "hong": "hgs1575", "sualchi": "what", "user1": "mypassword"}
fmt.Println(pw)
fmt.Println(pw["sysop"])
pw["sysop"] = "newpassword#$@@"
fmt.Println(pw["sysop"])
var password, ok = pw["sualchi"]
if ok {
fmt.Println(password)
} else {
fmt.Println("존재하지 않는 사용자입니다.")
}
delete(pw, "sualchi")
password, ok = pw["sualchi"] // var 필요 없음 (앞에서 만들어진 변수)
if ok {
fmt.Println(password)
} else {
fmt.Println("존재하지 않는 사용자입니다.")
}
for name := range pw {
fmt.Printf("%s: %s\n", name, pw[name])
}
for name, pass := range pw {
fmt.Printf("%s: %s\n", name, pass)
}
}
[실행 결과]
map[둘:2 하나:0]
0
1
map[hong:hgs1575 sualchi:what sysop:1234! user1:mypassword]
1234!
newpassword#$@@
what
존재하지 않는 사용자입니다.
hong: hgs1575
user1: mypassword
sysop: newpassword#$@@
user1: mypassword
sysop: newpassword#$@@
hong: hgs1575
반응형
'Go (Golang)' 카테고리의 다른 글
Go 언어 함수형 변수, 표준 입력, 좌우 공백문자 제거 (0) | 2024.02.09 |
---|---|
go, 데스크탑 프로그램 만들기 (0) | 2024.02.04 |
Golang, 배열과 슬라이스 비교, 슬라이스 항목 제거 (0) | 2024.01.14 |
Go 언어 배열 생성, 인덱스 접근, 항목 주소 확인 (0) | 2024.01.13 |
Golang 에러 처리, 에러 생성, 예외 처리 (1) | 2023.12.28 |