Iterando sobre Slices
Parte da seção Fundamentos do Journey de GO da Coddy — lição 81 de 109.
Para iterar sobre um slice em Go, você pode usar um loop for com a palavra-chave range.
Crie um slice de frutas:
fruits := []string{"Apple", "Banana", "Cherry"}
fmt.Println("Fruits:", fruits)Itere pelo slice usando range:
for index, value := range fruits {
fmt.Printf("Index: %d, Value: %s\n", index, value)
}Resultado:
Fruits: [Apple Banana Cherry]
Index: 0, Value: Apple
Index: 1, Value: Banana
Index: 2, Value: CherrySe você precisar apenas dos valores, use o identificador em branco (_):
for _, fruit := range fruits {
fmt.Println(fruit)
}Desafio
FácilNeste desafio, você praticará a iteração sobre um slice de frutas usando a palavra-chave range. Sua tarefa é percorrer o slice e imprimir cada fruta com sua posição na lista.
O slice já está definido para você. Você precisa completar o loop for usando range para iterar pelo slice e imprimir cada fruta com sua posição (começando em 1).
Folha de consulta
Para iterar sobre um slice em Go, use um loop for com a palavra-chave range:
fruits := []string{"Apple", "Banana", "Cherry"}
for index, value := range fruits {
fmt.Printf("Index: %d, Value: %s\n", index, value)
}Se você precisar apenas dos valores, use o identificador em branco (_):
for _, fruit := range fruits {
fmt.Println(fruit)
}Experimente você mesmo
package main
import "fmt"
func main() {
// Um slice de frutas
fruits := []string{"Apple", "Banana", "Cherry", "Dragon fruit", "Elderberry"}
// TODO: Complete o loop for usando range para iterar pelo slice de frutas
// Imprima cada fruta com sua posição como: "1. Apple"
for // Adicione seu loop range aqui {
// Adicione seu código aqui para imprimir cada fruta com sua posição
}
}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ões