Pessoal gostaria de entender qual a diferença entre os operadores !
e ?
, sendo que notei que funcionaram da mesma maneira nos exemplos a seguir:
Exemplo com ?:
class Teste {
var numero:Int? //<-- Utilizando ?
}
let teste1 = Teste()
print(teste1.numero) //A saída é nula
Exemplo com !:
class Teste {
var numero:Int! //<-- Utilizando !
}
let teste1 = Teste()
print(teste1.numero) //A saída é nula
Em ambos os casos a saída foi nula, mas eu esperava que ao utilizar o operador !
ocorresse algum erro, pois entendi que ele afirma que a variável terá algum valor.