Swift: opcional e como trabalhar com ele

Jan 28 2023
Já encontrou esse erro e não sabe como trabalhar com ele? Não se preocupe, até o final deste artigo você aprenderá não apenas 1, mas 5 maneiras diferentes de trabalhar com opcionais. Prepare-se, todos! O que é Opcional? Antes de entrarmos em como trabalhar com opcional, vamos discutir o que é um opcional.

Já encontrou esse erro e não sabe como trabalhar com ele?

Erro opcional ao desempacotar

Não se preocupe, até o final deste artigo você aprenderá não apenas 1, mas 5 maneiras diferentes de trabalhar com opcionais. Prepare-se, todos!

O que é Opcional?

Antes de entrarmos em como trabalhar com opcional, vamos discutir o que é um opcional. Portanto, opcional é um tipo que pode conter um valor ou nenhum valor . Isso significa que esse tipo de propriedade pode ser nil ou não nil. Podemos usar opcional adicionando '?' no final do tipo de dados.

Valor opcional

5 maneiras diferentes de trabalhar com opcionais no Swift:

  1. Forçar desembrulhar
  2. Verifique o valor nulo
  3. Encadernação opcional
  4. operador coalescente nulo
  5. Encadeamento opcional
Forçar desembrulhar

O primeiro aqui que temos é o Force Unwrapping. É muito fácil de aplicar, basta adicionar “!” no final do código. Mas o contras do desempacotamento forçado é que essa é a maneira menos segura de trabalhar com o opcional. Ao usar isso, você deve se concentrar em garantir que o valor nunca seja nulo ou o aplicativo travará.

Verifique o valor nulo

Verifique o valor nulo

A maneira um pouco mais segura de trabalhar com opcional, a segunda maneira de trabalhar com opcional é 'Verificar valor nulo'. Agora aqui você pode usar a instrução if-else para verificar se o valor é nulo. É uma maneira mais segura, mas quando você deseja reatribuir o valor a uma nova variável/constante, observe aqui que o tipo de dados ainda é uma string opcional.

Verifique o valor nulo — tipo de dados

Agora, e se quisermos mudar o tipo de dados para uma string? Bem, você pode alterar o código para assim

Verifique se há valor nulo - atualização

e veja que o tipo de dados é uma string.

Mas como você vê aqui, é muito prolixo, certo? Agora, e se houver um caminho mais curto...

Encadernação opcional

Encadernação opcional

Apresentando 'Encadernação opcional'! Observe que o código aqui é mais curto! Agora, a ligação opcional é a maneira mais comum de trabalhar com opcionais. Na ligação opcional, desembrulhamos o valor opcional e o salvamos em uma nova constante que é neste exemplo, o let opcionalBinding. Agora, se você reatribuir este optionalBinding em uma nova constante como newValue

Ligação opcional — tipo de dados

como você pode ver, o valor se torna uma string, não uma string opcional! É por isso que as pessoas geralmente usam ligação opcional sempre que usam valor opcional. É fácil de usar e muito curto para codificar!

operador coalescente nulo

Agora usamos o Nil Coalescing Operator quando queremos fornecer um valor padrão quando a condição /opcional é igual a nil.

Encadeamento opcional

Agora, em vez de trabalhar com variáveis ​​opcionais, e se quisermos trabalhar com struct opcional?
Vamos dar uma olhada nesta estrutura simples.

Estrutura Simples

Agora vamos criar um objeto opcional a partir desta estrutura e tentar obter a propriedade aqui.

Erro ao acessar a propriedade de estrutura opcional

Ops! Erro! Agora, neste caso, podemos usar a força de desdobramento usando “!” mas como eu disse antes, não é seguro.

Forçar desempacotamento — propriedade Struct

E se o valor for nulo? Nosso aplicativo pode travar. Agora, no Swift, existe uma funcionalidade que pode nos ajudar com esse cenário, que é o encadeamento opcional.

Encadeamento opcional

Agora com encadeamento opcional, podemos acessar os métodos e propriedades da struct com segurança!

E essas são as 5 maneiras diferentes de trabalhar com opcionais no Swift! Obrigado por ler. Se você tiver alguma entrada, por favor, deixe um comentário abaixo!