728x90
    
    
  
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
728x90
    
    
  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 |