NEW: Master Swift design patterns with my latest book! >>

How to use map() with an optional value

Written by Paul Hudson    @twostraws

The map() method of optionals allows you to transform the optional if it has a value, or do nothing if it is empty. This makes for shorter and more expressive code than doing a regular unwrap, and doesn’t require you to change your data type.

For example, if you had an optional string like this one:

let name: String? = "twostraws"

You could use the map() method to transform it safely, without having to check and unwrap it – if it were nil, the map() call would do nothing.

For example:

let twitterName = name.map { "@\($0)" }
print(twitterName)

That will print @twostraws.

Available from iOS – learn more in my book Pro Swift

Did this solution work for you? Please pass it on!

Other people are reading…

About the Swift Knowledge Base

This is part of the Swift Knowledge Base, a free, searchable collection of solutions for common iOS questions.

Master iOS 11 now!

My book Practical iOS 11 gives you seven complete coding projects that teach all the major new features in iOS 11 in a smart, practical way.

Click here to visit the Hacking with Swift store >>