O'Reilly logo

Mastering Swift 4 - Fourth Edition by Jon Hoffman

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Introducing optionals

When we declare variables in Swift, they are by default non-optional, which means that they must contain a valid, non-nil value. If we try to set a non-optional variable to nil, it will result in an error.

For example, the following code will throw an error when we attempt to set the message variable to nil because it is a non-optional type:

var message: String = "My String" 
message = nil

It is very important to understand that nil in Swift is very different from nil in Objective-C or other C-based languages. In these languages, nil is a pointer to a non-existent object; however, in Swift nil is the absence of a value. This concept is very important to fully understand optionals in Swift.

A variable defined as an optional ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required