Sobes.tech
Junior — Middle

As visualizações em Go têm métodos de comprimento e capacidade semelhantes aos slices?

sobes.tech IA

Resposta da IA

Em Go, os mapas (maps) não têm métodos de comprimento e capacidade, como os slices. Em vez de métodos para obter o comprimento, usa-se a função incorporada len(), que retorna o número de elementos no mapa.

Para slices, pode-se usar len() para o comprimento atual e cap() para a capacidade (tamanho máximo sem alocação de memória adicional). Nos mapas, não existe cap(), pois eles crescem dinamicamente à medida que elementos são adicionados.

Exemplo:

m := make(map[string]int)
m["a"] = 1
fmt.Println(len(m)) // exibe 1

s := make([]int, 0, 10)
fmt.Println(len(s)) // 0
fmt.Println(cap(s)) // 10