Go(4 [Map])

2319 단어 Go(day4[Map])GO
지도 소개:
 key - value 의 데이터 구 조 는 사전 또는 관련 배열 이 라 고도 합 니 다.
맵 데이터 구조:
    맵 은 참조 형식 입 니 다.
쓰기: var map 1 map [keytype] value type
사전 설명
메모: 메모 리 를 할당 하지 않 습 니 다. 초기 화 하려 면 make 가 필요 합 니 다.
그래서: test: = make (map [string] int, 10) 로 간략하게 쓸 수 있 습 니 다.
    --> test 사전 만 들 기: key 형식 은 string 이 고 value 형식 은 int 이 며 길 이 는 10 입 니 다. (회 패 닉 을 초과 하면 index out of range)
var map1 map[keytype]valuetypevar a map[string]stringvar a map[string]intvar a map[int]string
var a map[string]map[string]string
var a map[string]int
a = make(map[string]int,10)
a["abc"] = 200
a["abc"] = 1200
a["hello"] = 222

지도 조작
var c map[string]string = map[string]string{"hi":"word"}
c["cc"] = "aaa"

삽입:
a[“hello”] = “world”

찾기:
//    :  key  val.
// --  2   ,   val,      


//    key ,          ,      0
//    ,    ,  val 0 ?      
Val,exist:= a[“hello”]


if exist{
   fmt.Printf("val=%d
",ok) }else {    fmt.Printf("not found %s
",val) }

반복:
for k,v :=range a{
   fmt.Println("for",k,v)
}

삭제:
//a  
//hello is key
delete(a,"hello")

길이: len (a)
예제: 함수 전달 사전
func test2(a map[string]int)  {
   a["one"] = 134
}
func mian(){
//map      ,       map
a := make(map[string]int,10)
test2(a)
}

3: map 에서 절편 만 들 기
밤 1: 1
func test4()  {
   aa := make([]map[int]int, 5)
   for i := 0; i >>
test4 [map[2:2] map[2:2] map[2:2] map[2:2] map[2:2]]

밤 2:
func test3()  {
   //    ,
   //      map
   //  map  nil,    
   s:=make([]map[string]int,10)
   for i:=0;i>>
sss [map[aaa:100 acc:100 1aa:100] map[] map[ccc:100] map[] map[] map[] map[] map[] map[] map[]]

4: 지도 정렬
  • 모든 키 를 가 져 오고 키 정렬
  • 잘 찍 은 키 에 따라 옮 겨 다 니 기
  • var keys []string
    
    for k, v := range a {
       fmt.Printf("a[%s] = %d
    ", k, v)    keys = append(keys, k) } sort.Strings(keys) for _, k := range keys {    fmt.Printf("Sort,a[%s]=%d
    ", k, a[k]) }

    메모 리 를 할당 하지 않 습 니 다. 초기 화 하려 면 make 가 필요 합 니 다.

    좋은 웹페이지 즐겨찾기