Menu
Coddy logo textTech

Valores de Retorno Nomeados

Parte da seção Fundamentos do Journey de GO da Coddy — lição 57 de 109.

Em Go, você pode nomear seus valores de retorno em declarações de função. Isso torna seu código mais legível e permite que você retorne apenas usando uma simples instrução return.

Crie uma função com valores de retorno nomeados:

func divide(a, b int) (quotient int, remainder int) {
    quotient = a / b
    remainder = a % b
    return  // retorno "naked"
}

func main() {
    q, r := divide(7, 3)
    fmt.Println("7 ÷ 3 =", q, "with remainder", r)
}

A saída é a mesma de antes:

7 ÷ 3 = 2 with remainder 1

Valores de retorno nomeados são inicializados com seus valores zero e podem ser atribuídos diretamente no corpo da função.

challenge icon

Desafio

Iniciante

Neste desafio, você praticará o uso de valores de retorno nomeados em funções Go.

Complete a função getPersonInfo que retorna o nome, a idade e se uma pessoa é estudante. A função já possui parâmetros de retorno nomeados, mas você precisa atribuir valores a eles.

A função deve retornar os valores predefinidos para uma pessoa chamada 'Alex' que tem 25 anos e é estudante.

Folha de consulta

Em Go, você pode nomear seus valores de retorno em declarações de função para melhor legibilidade e usar uma instrução return simples:

func divide(a, b int) (quotient int, remainder int) {
    quotient = a / b
    remainder = a % b
    return  // retorno "naked"
}

Valores de retorno nomeados são inicializados com seus valores zero e podem ser atribuídos diretamente no corpo da função.

Experimente você mesmo

package main

import "fmt"

// Esta função usa valores de retorno nomeados
func getPersonInfo() (name string, age int, isStudent bool) {
	// TODO: Atribuir valores às variáveis de retorno nomeadas
	// name deve ser "Alex"
	// age deve ser 25
	// isStudent deve ser true
	
	// A instrução "return" sem argumentos retornará os valores de retorno nomeados
	return
}

func main() {
	name, age, isStudent := getPersonInfo()
	fmt.Printf("Name: %s\nAge: %d\nStudent: %t\n", name, age, isStudent)
}
quiz iconTeste seus conhecimentos

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