
1. Go 맵 사용법
Go에서 맵(map)은 키-값 쌍으로 데이터를 저장하는 자료구조로, Go에서 맵을 정의하고 초기화하는 방법은 아래와 같습니다.
- Go 맵 정의 및 초기화
맵을 정의하고 초기화하는 방법입니다
package main
import "fmt"
func main() {
// 맵 정의
myMap := make(map[string]int)
}
- 데이터 추가
맵의 데이터를 추가하는 방법은 다음과 같습니다, 키를 사용해 값을 할당합니다.
myMap["apple"] = 1 // "apple" 키에 1 값을 추가
- 데이터 조회
맵에서 데이터를 조회할 때는 키를 사용합니다. 키가 존재하지 않을 경우 기본값을 반환
// 데이터 추가
myMap["apple"] = 1
myMap["banana"] = 2
// 데이터 조회
fmt.Println("Apple:", myMap["apple"]); // result: Apple: 1
- 키 존재 여부 확인
키가 존재하는지 확인하려면 다음과 같이 두 번째 반환 값을 사용
value, exist := myMap["banana"]
if exist {
fmt.Println("Banana:", value) // result: Banana: 2
} else {
fmt.Println("Banana is not exist"); // result: Banana key dose not exist.
}
2. 데이터 삭제, 전체 맵 출력
- 데이터 삭제
맵에서 데이터를 삭제하려면 delete 함수를 사용
delete(myMap, "apple"); // "apple" 키와 그에 해당하는 값 삭제
- 전체 맵 출력
맵의 모든 키-값 쌍을 출력하려면 for 루프를 사용
for key, value := range myMap {
fmt.Printf("%s: %d\n", key, value);
}
3. 전체 코드
package main
import "fmt"
func main() {
// 맴 정의
myMap := make(map[string]int)
// 데이터 추가
myMap["apple"] = 1
myMap["banana"] = 2
// 데이터 조회
fmt.Println("Apple:", myMap["apple"]); // result: Apple: 1
// 삭제 후 조회
value, exist := myMap["banana"]
if exist {
fmt.Println("Banana:", value); // result: Banana: 2
} else {
fmt.Println("Banana is not exist"); // result: Banana key dose not exist.
}
// 데이터 삭제
delete(myMap, "apple"); // "apple" 키와 그에 해당하는 값 삭제
fmt.Println("After deletion: ", myMap);
// 전체 맵 출력
for key, value := range myMap {
fmt.Printf("%s: %d\n", key, value);
}
}
GitHub - Koras02/Go-Bloging: https://thinky.tistory.com/category/Back-End/Go
https://thinky.tistory.com/category/Back-End/Go. Contribute to Koras02/Go-Bloging development by creating an account on GitHub.
github.com
LIST
'Back-End > Go' 카테고리의 다른 글
[Go] 8장(완) 고루틴과 채널 (1) | 2025.03.04 |
---|---|
[Go] 7장 구조체와 인터페이스 (0) | 2025.03.04 |
[GO] 5장 배열과 슬라이스 (0) | 2025.02.28 |
[Go] 4장 함수(Function) (0) | 2025.02.26 |
[Go] 3장 제어 구조 (0) | 2025.02.24 |