Funções voláteis em Golang

Funções variádicas em Go permitem que você passe um número variável de argumentos para uma função. Esse recurso é útil quando você não sabe com antecedência quantos argumentos irá passar. Uma função variádica de Golang  aceita vários argumentos do mesmo tipo e pode ser chamada com qualquer número de argumentos, incluindo nenhum.

Funções voláteis em Golang

package main
import "fmt"

// Hàm Variadic tính tổng
func sum(nums ...int) int {
    total := 0
    for _, n := range nums {
        total += n
    }
    return total
}

func main() {
    fmt.Println("Sum of 1, 2, 3:", sum(1, 2, 3))
    fmt.Println("Sum of 4, 5:", sum(4, 5))
    fmt.Println("Sum of no numbers:", sum())
}

Resultado:

Sum of 1, 2, 3: 6
Sum of 4, 5: 9
Sum of no numbers: 0

Sintaxe:

func functionName(parameters ...Type) ReturnType {
    // Code
}

Na sintaxe acima:

  • parameters ...Typeindica que a função pode aceitar um número variável de argumentos do tipo Type.
  • Você pode acessar argumentos em uma função como uma fatia.

Como usar funções incertas em Golang

Usando funções variádicas

Ao definir uma função variádica, você especifica o tipo de argumento seguido por reticências (...), como no exemplo acima. Dentro da função, esses argumentos podem ser considerados como uma fatia.

Chamando uma função variádica

Você pode chamar uma função variádica com qualquer número de argumentos, incluindo zero. Esta função trata os argumentos como uma fatia.

Por exemplo:

package main
import "fmt"

func sum(nums ...int) int {
    total := 0
    for _, n := range nums {
        total += n
    }
    return total
}

func main() {
    fmt.Println("Sum of 1, 2, 3:", sum(1, 2, 3))
    fmt.Println("Sum of 4, 5:", sum(4, 5))
    fmt.Println("Sum of no numbers:", sum())
}

Resultado:

Sum of 1, 2, 3: 6
Sum of 4, 5: 9
Sum of no numbers: 0

Função variádica com parâmetros diferentes

Você também pode combinar parâmetros variádicos com parâmetros regulares em uma função. Os parâmetros variádicos devem sempre ser o último parâmetro.

Por exemplo:

package main
import "fmt"

// Hàm Variadic tính tổng
func sum(nums ...int) int {
    total := 0
    for _, n := range nums {
        total += n
    }
    return total
}

// Hàm với tham số thông thường và variadic 
func greet(prefix string, nums ...int) {
    fmt.Println(prefix)
    for _, n := range nums {
        fmt.Println("Number:", n)
    }
}
func main() {
    greet("Sum of numbers:", 1, 2, 3)
    greet("Another sum:", 4, 5)
    greet("No numbers sum:")
}

Resultado:

Sum of numbers:
Number: 1
Number: 2
Number: 3
Another sum:
Number: 4
Number: 5
No numbers sum:

Limitações das funções variádicas

  • Funções variádicas podem ter apenas um parâmetro variádico e este deve ser o último parâmetro.
  • Não é possível ter vários parâmetros variádicos em uma única definição de função.
Sign up and earn $1000 a day ⋙

Leave a Comment

Como recuperar o acesso ao disco rígido, corrigir o erro de não conseguir abrir o disco rígido

Como recuperar o acesso ao disco rígido, corrigir o erro de não conseguir abrir o disco rígido

Neste artigo, mostraremos como recuperar o acesso ao seu disco rígido em caso de falha. Vamos acompanhar!

Como usar o recurso de Conscientização de Conversação e Escuta ao Vivo nos AirPods

Como usar o recurso de Conscientização de Conversação e Escuta ao Vivo nos AirPods

À primeira vista, os AirPods parecem fones de ouvido sem fio comuns. Mas tudo mudou quando alguns recursos pouco conhecidos foram descobertos.

Tudo sobre o iOS 26

Tudo sobre o iOS 26

A Apple apresentou o iOS 26 – uma grande atualização com um novo design de vidro fosco, experiências mais inteligentes e melhorias em aplicativos familiares.

Os melhores laptops para estudantes em 2025

Os melhores laptops para estudantes em 2025

Os alunos precisam de um tipo específico de laptop para seus estudos. Ele não deve apenas ser potente o suficiente para um bom desempenho na área de estudo escolhida, mas também compacto e leve o suficiente para ser carregado o dia todo.

Como adicionar uma impressora ao Windows 10

Como adicionar uma impressora ao Windows 10

Adicionar uma impressora ao Windows 10 é simples, embora o processo para dispositivos com fio seja diferente do que para dispositivos sem fio.

Como verificar a RAM e verificar erros de RAM no seu computador com a maior taxa de precisão

Como verificar a RAM e verificar erros de RAM no seu computador com a maior taxa de precisão

Como você sabe, a RAM é um componente de hardware muito importante em um computador, atuando como memória para processar dados e é o fator que determina a velocidade de um laptop ou PC. No artigo abaixo, o WebTech360 apresentará algumas maneiras de verificar erros de RAM usando software no Windows.

Diferença entre TV comum e Smart TV

Diferença entre TV comum e Smart TV

As Smart TVs realmente conquistaram o mundo. Com tantos recursos excelentes e conectividade à Internet, a tecnologia mudou a maneira como assistimos TV.

Por que o freezer não tem luz, mas a geladeira tem?

Por que o freezer não tem luz, mas a geladeira tem?

Geladeiras são eletrodomésticos comuns em residências. As geladeiras geralmente têm 2 compartimentos, o compartimento frio é espaçoso e tem uma luz que acende automaticamente toda vez que o usuário o abre, enquanto o compartimento do freezer é estreito e não tem luz.

2 maneiras de corrigir o congestionamento da rede que deixa o Wi-Fi lento

2 maneiras de corrigir o congestionamento da rede que deixa o Wi-Fi lento

As redes Wi-Fi são afetadas por muitos fatores além de roteadores, largura de banda e interferência, mas existem algumas maneiras inteligentes de melhorar sua rede.

Como fazer downgrade do iOS 17 para o iOS 16 sem perder dados usando o Tenorshare Reiboot

Como fazer downgrade do iOS 17 para o iOS 16 sem perder dados usando o Tenorshare Reiboot

Se você quiser voltar para o iOS 16 estável no seu telefone, aqui está o guia básico para desinstalar o iOS 17 e fazer o downgrade do iOS 17 para o 16.

O que acontece com o corpo quando você come iogurte todos os dias?

O que acontece com o corpo quando você come iogurte todos os dias?

Iogurte é um alimento maravilhoso. É bom comer iogurte todos os dias? Quando você come iogurte todos os dias, como seu corpo muda? Vamos descobrir juntos!

Que tipo de arroz é melhor para a saúde?

Que tipo de arroz é melhor para a saúde?

Este artigo discute os tipos de arroz mais nutritivos e como maximizar os benefícios para a saúde de qualquer arroz que você escolher.

Como acordar na hora certa pela manhã

Como acordar na hora certa pela manhã

Estabelecer um horário de sono e uma rotina para dormir, mudar o despertador e ajustar a dieta são algumas das medidas que podem ajudar você a dormir melhor e acordar na hora certa pela manhã.

Dicas para jogar Rent Please! Simulador de Proprietário para Iniciantes

Dicas para jogar Rent Please! Simulador de Proprietário para Iniciantes

Alugue, por favor! Landlord Sim é um jogo de simulação para dispositivos móveis para iOS e Android. Você jogará como proprietário de um complexo de apartamentos e começará a alugar um apartamento com o objetivo de reformar o interior do seu apartamento e deixá-lo pronto para inquilinos.

Últimos códigos de defesa de torre de banheiro e como inseri-los

Últimos códigos de defesa de torre de banheiro e como inseri-los

Obtenha o código do jogo Bathroom Tower Defense Roblox e resgate recompensas emocionantes. Elas ajudarão você a melhorar ou desbloquear torres com maior dano.