Lição: 14: Funções e Parâmetros
Funções são um dos blocos básicos fundamentais na programação Swift. Elas permitem encapsular lógica, organizar seu código e torná-lo reutilizável. Nesta aula, vamos explorar como definir funções, usar parâmetros, retornar valores e muito mais.
Introdução às Funções
Uma função é um bloco de código autocontido que realiza uma tarefa específica. Você pode definir uma função uma vez e chamá-la onde precisar, o que ajuda a reduzir repetições e melhora a legibilidade do seu código.
Definindo uma Função
Em Swift, você define uma função usando a palavra-chave func
, seguida pelo nome da função, parâmetros e um tipo de retorno (se necessário). Aqui está um exemplo simples de uma função que imprime uma saudação:
func cumprimentar() {
print("Olá, Mundo!")
}
// Chamando a função
cumprimentar() // Saída: Olá, Mundo!
Funções com Parâmetros
Os parâmetros permitem que você passe valores para as funções. Você pode especificar um ou mais parâmetros listando-os entre parênteses após o nome da função. Cada parâmetro deve ter um nome e um tipo.
Aqui está um exemplo de uma função que recebe um nome como parâmetro e imprime uma saudação personalizada:
func cumprimentar(pessoa: String) {
print("Olá, \(pessoa)!")
}
// Chamando a função com um argumento
cumprimentar(pessoa: "Alice") // Saída: Olá, Alice!
Múltiplos Parâmetros
Você pode definir funções com múltiplos parâmetros. Basta separá-los com vírgulas na lista de parâmetros. Aqui está um exemplo que recebe dois números e imprime sua soma:
func somarNumeros(a: Int, b: Int) {
let soma = a + b
print("A soma de \(a) e \(b) é \(soma).")
}
// Chamando a função
somarNumeros(a: 5, b: 3) // Saída: A soma de 5 e 3 é 8.
Valores de Retorno
Além de realizar ações, as funções também podem retornar valores. Para especificar um tipo de retorno, você coloca dois pontos e o tipo após a lista de parâmetros na definição da função. Use a palavra-chave return
para retornar um valor da função.
Aqui está um exemplo de uma função que calcula o quadrado de um número:
func quadrado(de numero: Int) -> Int {
return numero * numero
}
// Chamando a função e armazenando o resultado
let resultado = quadrado(de: 4)
print("O quadrado de 4 é \(resultado).") // Saída: O quadrado de 4 é 16.
Parâmetros Padrão
Você pode fornecer valores padrão para os parâmetros. Se um chamador não fornecer um valor para um parâmetro com padrão, a função usa o valor padrão.
func cumprimentar(pessoa: String = "Visitante") {
print("Olá, \(pessoa)!")
}
// Chamando com e sem um argumento
cumprimentar() // Saída: Olá, Visitante!
cumprimentar(pessoa: "Bob") // Saída: Olá, Bob!
Parâmetros Variádicos
Uma função pode aceitar um número variável de argumentos usando parâmetros variádicos. Isso é feito adicionando ...
após o tipo do parâmetro.
Por exemplo, aqui está uma função que calcula a média de qualquer número de inteiros:
func media(de numeros: Int...) -> Double {
let soma = numeros.reduce(0, +)
return Double(soma) / Double(numeros.count)
}
// Chamando a função
let mediaFinal = media(de: 1, 2, 3, 4, 5)
print("A média é \(mediaFinal).") // Saída: A média é 3.0.
Parâmetros In-Out
Swift permite que você modifique o valor de um parâmetro usando a palavra-chave inout
. Isso é útil quando você deseja alterar o valor de um argumento passado para uma função.
func incrementarContador(contador: inout Int) {
contador += 1
}
// Usando a função
var meuContador = 0
incrementarContador(contador: &meuContador)
print("Contador após incremento: \(meuContador).") // Saída: Contador após incremento: 1.
Conclusão
Funções são um recurso poderoso do Swift que ajuda a organizar seu código, promover reutilização e melhorar a legibilidade. Nesta aula, cobrimos como definir funções, usar parâmetros, retornar valores e mais.
Agora é hora de praticar! Experimente definir suas próprias funções que utilizem parâmetros e retornem valores. Brinque com parâmetros padrão, variádicos e in-out para ver como eles funcionam. Feliz codificação!