Adicionando e Atualizando Chave-Valor
Parte da seção Fundamentos do Journey de GO da Coddy — lição 87 de 109.
Para adicionar ou atualizar valores em um mapa, use o operador de atribuição com a chave entre colchetes.
Crie um mapa de pontuações de alunos:
students := make(map[string]int)
// Adicione novos pares chave-valor
students["Emma"] = 92
students["Jack"] = 78
fmt.Println(students)Resultado:
map[Emma:92 Jack:78]Atualize um valor existente:
students["Jack"] = 85
fmt.Println(students)Resultado:
map[Emma:92 Jack:85]Desafio
InicianteNeste desafio, você praticará a adição e atualização de valores em um mapa. Temos um mapa que armazena as frutas favoritas de diferentes pessoas. Sua tarefa é adicionar a fruta favorita de uma nova pessoa e atualizar a fruta favorita de uma pessoa existente.
Folha de consulta
Para adicionar ou atualizar valores em um mapa, use o operador de atribuição com a chave entre colchetes:
students := make(map[string]int)
// Adicionar novos pares chave-valor
students["Emma"] = 92
students["Jack"] = 78
// Atualizar um valor existente
students["Jack"] = 85Experimente você mesmo
package main
import (
"fmt"
"sort"
)
func main() {
// Mapa de pessoas e suas frutas favoritas
favoriteFruits := map[string]string{
"Alice": "Apple",
"Bob": "Banana",
"Carol": "Cherry",
}
// TODO: Adicionar uma nova entrada para "David" com a fruta favorita "Dragon Fruit"
// TODO: Atualizar a fruta favorita de Bob para "Blueberry"
// Coletar os nomes (chaves) em um slice para ordená-los
var names []string
for person := range favoriteFruits {
names = append(names, person)
}
sort.Strings(names)
// Imprimir o mapa atualizado em ordem ordenada
fmt.Println("Updated favorite fruits:")
for _, person := range names {
fruit := favoriteFruits[person]
fmt.Printf("%s loves %s\n", person, fruit)
}
}
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Fundamentos
4Operadores de Comparação e Lógicos
Operadores de Comparação - Parte 1Operadores de Comparação - Parte 2Operador Lógico ANDOperador Lógico OROperador Lógico NOTFundamentos de Precedência de OperadoresRecapitulação - Fazendo Comparações7Fluxo de Controle: Loops
O Loop `for` ExplicadoLoop For - BásicoLoop For - Apenas CondiçãoA Palavra-chave `break`A Palavra-chave `continue`Loops AninhadosRecapitulação - Repetindo Ações2Variáveis e Tipos de Dados Básicos
O que é uma variávelInferência de Tipo com `:=`Inteiros (int)Números de Ponto FlutuanteBooleanosStringsValores ZeroConstantesConvenções de NomenclaturaRecapitulação - Variáveis e Tipos5Entrada/Saída Básica
Saída FormatadaVerbos de FormataçãoImprimindo TiposObtendo Entrada Básica do UsuárioRecapitulação - Entrada e Saída8Funções
Entendendo FunçõesDeclarando uma FunçãoChamando FunçõesParâmetros de FunçãoRetornando um Único ValorRetornando Múltiplos ValoresValores de Retorno NomeadosFundamentos de Escopo de FunçãoRecapitulação - Criando Código Reutilizável3Operadores Básicos
Operadores AritméticosOperador de DivisãoO Operador MóduloOperador de AtribuiçãoOperadores de Atribuição CompostaIncremento e DecrementoRecapitulação - Cálculos6Fluxo de Controle: Condicionais
A Instrução `if`A Palavra-chave `else`A Palavra-chave `else if`Sombreamento de Variáveis no `if`Inicializando VariáveisA Instrução `switch`Switch com ExpressõesSwitch sem ExpressãoA Palavra-chave `fallthrough`Recapitulação - Tomando Decisões9Ponteiros
O que é um Ponteiro?Declarando Variáveis de PonteiroO Operador de EndereçoDesreferenciando PonteirosUsando Ponteiros em FunçõesPonteiros NilRecapitulação - Entendendo Ponteiros12Tipos Compostos: Mapas
Introdução a MapasDeclarando Literais de MapasCriando Mapas com `make`Adicionando e Atualizando Chave-ValorAcessando Valores de MapasVerificando a Existência de ChavesDeletando Entradas de MapasTamanho do MapaIterando sobre MapasRecapitulação - Armazenamento Chave-Valor