Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

iOS Swift Basics (retired) Collections What is a Dictionary?

Saeed Rehman
Saeed Rehman
455 Points

Assign the value for key "UK" to a constant named ukCurrency

I am trying to assign the UK value to a constant name ukCurrency. I have typed the following and it is showing as an error. Please help.

let currencies = [ "US" : "Dollar", "UK" : "Pound", "JP" : "Yen" ] let ukCurrency = currencies.removeValueForKey("UK")

dictionaries.swift
let currencies = [ "US" : "Dollar", "UK" : "Pound", "JP" : "Yen" ]
let ukCurrency = currencies.removeValueForKey("UK")

3 Answers

Robin Malhotra
Robin Malhotra
14,883 Points

Shouldn't it simply be

let currencies = [ "US" : "Dollar", "UK" : "Pound", "JP" : "Yen" ]
let ukCurrency = currencies["UK"]
Robin Malhotra
Robin Malhotra
14,883 Points

Not a problem. Do consider upvoting my answer, in case other people have similar problems.

Saeed Rehman
Saeed Rehman
455 Points

Hi Robin

Thanks for your support, but I have a further question. In the video Amit mentions in order to remove the value for the key, you need to type currencies.removeValueForKey("UK"), so that is why i used it. Not sure why that didn't work.

let ukCurrency = currencies.removeValueForKey("UK")

Robin Malhotra
Robin Malhotra
14,883 Points

That's because you declared currencies with let ,thereby making it a constant. Constants are immutable, i.e, they cannot be modified. So, when you tried to modify the constant dictionary currencies, the compiler threw up an error.