As funções são muito úteis quando você precisa salvar a memória e melhorar a legibilidade do seu código. Isso ocorre porque as funções ajudam a organizar o código em seções modulares, aumentando a legibilidade.
Este guia ensinará como trabalhar com funções na linguagem de programação Go. Isso ajudará você a entender como você pode definir suas próprias funções em seus programas.
O básico
Como mencionado, uma função é um pedaço de código ou declarações que executam uma tarefa específica. Go vem com uma coleção de funções predefinidas de sua biblioteca padrão.
Um exemplo de uma função popular é o FMT.Função println ().
Vamos entender como podemos criar funções personalizadas.
Vá definir função
Comece criando uma pasta chamada funções e navegue nela.
$ mkdir funções
$ CD Functions/
Crie um arquivo “Funções.vá "para armazenar o código -fonte:
$ Touch Functions.ir
Para definir uma função em Go, começamos com a palavra -chave Func. Em seguida, é seguido pelo nome da função e um par de parênteses. Se uma função aceitar parâmetros, você pode passá -los dentro dos parênteses. Lembre -se de que uma função não pode ter parâmetros.
Por fim, crie o bloco de funções (o que a função faz) dentro de um par de aparelhos encaracolados.
A sintaxe geral para definição de função é como mostrado:
func function_name (params)
// Bloco de função
Vamos criar uma função chamada Greet:
Func Greet ()
O código acima agirá como a definição de nossa função.
Em seguida, criaremos um bloco de funções que contém o código de que operação a função executa.
FUNC GREET ()
fmt.Println ("oi, todos!")
Aqui, a função imprime a string “Oi, todos!”Para o console.
Agora que nossa função é definida e completa, precisamos garantir que ela execute a tarefa definida.
Função de chamada
Para que a função execute as ações definidas, precisamos chamá -la. Em Go, a execução começa na função principal. Portanto, precisamos chamar nossa função greet () dentro da função principal.
Considere o código de exemplo abaixo:
Pacote principal
importar "fmt"
func main ()
saudar()
FUNC GREET ()
fmt.Println ("oi, todos!")
Agora podemos executar nosso programa como:
$ go run funções.ir
Depois de executar o programa, devemos ver a saída da função greet () como:
::saída
Oi pessoal!
Nota: em Go, a função principal diz ao compilador onde a execução do programa começa. Você só pode ter uma função principal em um programa e não aceita nenhum argumento ou retorna qualquer valor.
As funções podem ser mais complexas do que a que usamos acima. Você pode usar outros recursos de Golang, como loops, funções aninhadas, declarações condicionais e muito mais.
Por exemplo, a função abaixo usa duas variáveis para comparar o valor máximo.
Pacote principal
importar "fmt"
func main ()
max ()
func max ()
var var1 = 10
var var2 = 100
var maximum = 0;
Se var1> var2
máximo = var1
else maximum = var2
fmt.Println (máximo)
No exemplo acima, definimos uma função chamada max. Em seguida, definimos 3 variáveis e comparamos se o var1 é maior que o var2. Se verdadeiro, definimos o valor máximo como 1; caso contrário, defina o valor máximo como var2.
Em seguida, imprimimos o valor da variável máxima usando o método println. Depois de chamarmos a função max (), devemos ver o maior valor como:
$ go run funções.ir
100
GO Parâmetros de função
Mencionamos que você pode criar parâmetros para suas funções. Vejamos como podemos criar funções com parâmetros.
Um parâmetro refere -se a uma unidade definida que atua como um argumento que uma função pode aceitar.
Para definir parâmetros em uma função, passe -os dentro dos parênteses durante a definição da função.
Em Go, começamos pelo nome do parâmetro e seu tipo de dados. A sintaxe para definir uma função com parâmetros é como mostrado:
func function_name (param1 data_type, param2 data_type)
// Corpo de função
Vamos repensar a função máxima e ver como podemos incluir parâmetros para tornar a função mais flexível.
Podemos definir dois parâmetros que atuam como os dois valores para comparar. Isso permite que o usuário passe quaisquer valores personalizados durante a chamada de função.
A função resultante é como mostrado:
func max (a int, b int)
var máximo = 0
Se A> B
máximo = a
outro
Máximo = b
fmt.Println (máximo)
Neste exemplo, a função máxima leva dois valores, compara -os e retorna o mais alto. Na função principal, podemos chamar a função max () como:
func main ()
Max (100,20)
Observe que podemos passar valores personalizados do que codificá-los manualmente dentro da função.
Dica: se você tiver um conjunto de parâmetros do mesmo tipo, poderá pular definir o tipo de dados para cada um e simplesmente defini -lo como um tipo.
Por exemplo, como os parâmetros das funções máximos são int, podemos defini -los como:
func max (a, b int)
// Corpo de função
Valor de retorno de funções GO
Se uma função pode aceitar um valor, certamente pode devolver um. Em Golang, podemos retornar um valor de uma função usando a palavra -chave de retorno. Quando o compilador encontra a palavra -chave de retorno, ele sai das funções e retorna à função do chamador.
Você deve especificar o tipo de dados do valor de retorno durante a declaração de função. A sintaxe é como mostrado:
func function_name (params data_type) return_value_data_type
// Corpo de função
Vamos modificar a função máxima para retornar o valor máximo em vez de imprimi -lo usando a função println.
func max (a, b int) int
var máximo = 0
Se A> B
máximo = a
outro
Máximo = b
Retorne o máximo
No exemplo acima, você percebe que adicionamos um tipo de retorno de int na declaração de função. Em seguida, usamos a palavra -chave de retorno para retornar o valor da variável máxima.
Como a função retorna um valor, podemos passar esse valor para outras funções, como mostrado no exemplo abaixo:
func main ()
// saudar()
// Max (100.20)
fmt.Println ("O valor máximo:", Max (250, 188))
O exemplo usa o valor de retorno da função máxima e a passa para a função Println.
GO também permite que você retorne vários valores de uma função. Por exemplo, podemos retornar uma string e int da mesma função que mostrou:
func max (a, b int) (int, string)
// Corpo de função
Retorne o máximo, "um tipo de retorno de string"
No exemplo acima, retornamos um valor int e string.
Conclusão
Este guia explorou como trabalhar com funções na linguagem de programação Go. Continue praticando para se tornar um programador melhor.