Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

iOS Swift 2.0 Collections and Control Flow Dictionaries Modifying a Dictionary

Ashley Boucher
Ashley Boucher
407 Points

On Inserting Key Value Pairs

Why does the code

airportCodes.updateValue("Dublin Airport", forKey: "DUB")

produce "nil" in the results area?

1 Answer

Michael Hulet
Michael Hulet
47,912 Points

The results pane shows what every function returns. Dictionary's updateValue(forKey:) method returns an optional value of the last value for that key in the dictionary, like this:

let dict = ["Key": "Value"]

dict.updateValue("Lock", forKey: "Key")
//"Value" will show in results

In this case, there was no value for the key "DUB" in that dictionary (or it was nil), so it had nothing to return, and so it returned nil