Optional - Swift
Open Source Your Knowledge, Become a Contributor
Technology knowledge has to be shared and made accessible for free. Join the movement.
Optional Intro
Um Optional (opicional) em swift é uma enumeração de dois valores. Um valor atribuído de qualquer tipo e nil (null). Ou seja há duas opções, uma atribuída no nil (nulo).
há duas possibilidade some (valor desempacotado) e none (literal nil)
Veja que elementos de um dicionário são intricicamente opcionais logo para fazer acesso aos elementos você deve indicá-lo. Se você estiver certo que o elemento do dicionário possui uma chave e valor válidos você pode usar o operador "!" para indicar que tem certeza que o elemento tem um valor válido para some.
Optional - Teste antes de atribuir um valor
Melhor seria se fizessemos um teste antes de usar uma variável/objeto para garantir que o valor não é nulo. para isso podemos declarar uma constante
Veja que a constante erro404 só é criada se existir um valor válido (some) para msgHTTP[404]. Isso evita o uso incorreto do "!".
IMPORTANTE: Isso torna swift bastante robusta, pois garante que se um elemento for acessado sem existir o códigio não quebra.
Optional - Acesso Seguro
O operador ? também serve para fazer acesso seguro seguro a métodos
Optional - Coalescing
Use o operador "??"" (Coalescing) para atribuir um valor defeult ao opcional