Menu
Coddy logo textTech

O que são Opcionais

Parte da seção Fundamentos do Journey de Swift da Coddy — lição 11 de 86.

Às vezes, uma variável pode não ter valor algum. No Swift, representamos a ausência de um valor usando optionals. Um opcional diz "existe um valor, e ele é igual a x" ou "não existe valor algum".

Para declarar um opcional, adicione um ponto de interrogação ? após o tipo:

var nickname: String? = "Alex"
var age: Int? = nil

No exemplo acima, nickname contém o valor "Alex", enquanto age contém nil — a forma do Swift de dizer "sem valor". Variáveis comuns não podem ser nil, mas opcionais podem.

Pense em um opcional como uma caixa que pode conter algo ou estar vazia. Antes de usar o que está dentro, você precisa verificar se realmente há algo lá. Este é um recurso de segurança fundamental no Swift que ajuda a evitar falhas decorrentes de valores ausentes inesperados.

var score: Int? = 100
print(score) // Optional(100)

score = nil
print(score) // nil

Observe que quando você imprime um opcional com um valor, ele mostra Optional(100) em vez de apenas 100. Para acessar o valor real dentro dele, você precisa desembrulhar o opcional — o que abordaremos nas próximas lições.

challenge icon

Desafio

Fácil

Escreva uma função createOptional que recebe um número e retorna uma string mostrando como esse número seria exibido quando impresso como um opcional.

Quando você imprime um opcional que contém um valor, o Swift o exibe no formato Optional(value).

Lembrete de sintaxe de função: Em Swift, uma função que retorna um valor usa a seta -> para especificar o tipo de retorno, e a palavra-chave return para enviar o resultado de volta. Por exemplo:

func myFunction(param: Int) -> String {<br>    return "result"<br>}

Você pode construir a string de retorno usando interpolação de string: "Optional(\(value))" — a parte \(value) insere o número diretamente na string.

Parâmetros:

  • value (Int): O número para envolver no formato opcional

Retornos: Uma string no formato Optional(value) onde value é o número fornecido.

Exemplo: Se a entrada for 100, retorne "Optional(100)"

Folha de consulta

Em Swift, optionals representam a ausência ou presença de um valor. Um opcional pode conter um valor ou ser nil.

Para declarar um opcional, adicione um ponto de interrogação ? após o tipo:

var nickname: String? = "Alex"
var age: Int? = nil

Variáveis comuns não podem ser nil, mas opcionais podem. Use nil para representar "nenhum valor":

var score: Int? = 100
score = nil

Ao imprimir um opcional com um valor, o Swift o exibe como Optional(value):

var score: Int? = 100
print(score) // Optional(100)

score = nil
print(score) // nil

Experimente você mesmo

func createOptional(value: Int) -> String {
    // Escreva o código aqui
}
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