Acessando Campos de Structs
Parte da seção Fundamentos do Journey de GO da Coddy — lição 96 de 109.
Para acessar campos em uma struct, use a notação de ponto (structVariable.fieldName).
Crie uma struct Person e acesse seus campos:
type Person struct {
name string
age int
}
func main() {
person := Person{name: "Alice", age: 30}
// Access individual fields
fmt.Println(person.name)
fmt.Println(person.age)
}A saída mostra os valores individuais dos campos:
Alice
30Você também pode modificar os valores dos campos usando a mesma notação de ponto:
person.age = 31
fmt.Println(person.age) // Imprime: 31Desafio
FácilNeste desafio, você praticará o acesso a campos de uma struct. Definimos uma struct Person com os campos name, age e isStudent.
Sua tarefa é acessar esses campos e imprimi-los usando os verbos de formatação corretos.
Folha de consulta
Para acessar campos em uma struct, use a notação de ponto (structVariable.fieldName):
type Person struct {
name string
age int
}
func main() {
person := Person{name: "Alice", age: 30}
// Acessar campos individuais
fmt.Println(person.name)
fmt.Println(person.age)
}Você também pode modificar os valores dos campos usando a notação de ponto:
person.age = 31
fmt.Println(person.age) // Imprime: 31Experimente você mesmo
package main
import "fmt"
func main() {
// Estrutura Person com três campos
type Person struct {
name string
age int
isStudent bool
}
// Um exemplo de pessoa
john := Person{
name: "John Doe",
age: 25,
isStudent: true,
}
// TODO: Imprima o nome de john usando fmt.Printf e o verbo de formato %s
fmt.Printf("Name: %s\n", ?)
// TODO: Imprima a idade de john usando fmt.Printf e o verbo de formato %d
fmt.Printf("Age: %d\n", ?)
// TODO: Imprima se john é um estudante usando fmt.Printf e o verbo de formato %t
fmt.Printf("Is student: %t\n", ?)
}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ções10Tipos Compostos: Arrays
Introdução a ArraysDeclarando ArraysInicializando ArraysAcessando Elementos de um ArrayTamanho do Array com `len`Iterando sobre ArraysArrays Multidimensionais13Tipos Compostos: Structs
Definindo Tipos PersonalizadosCriando Instâncias de StructsAcessando Campos de StructsPonteiros para StructsInicializando StructsStructs IncorporadasStructs AnônimasRecapitulação - Estruturas de Dados Personalizadas2Variá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