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 Enumerations and Optionals in Swift Introduction to Optionals Nil Values in Collections

Chase Maddox
PLUS
Chase Maddox
Courses Plus Student 5,461 Points

Assigning a New Value to a Global Variable from an Optional Chain

Hi,

I think I correctly retrieved the value that this Code Challenge is asking for, but I can't figure out how to update the value of leadActor outside of the 'if let' statement. It seems like a basic thing I'm forgetting with how to update stored properties, but I cannot figure it out. What am I doing wrong?

Thanks, Chase

optionals.swift
let movieDictionary = ["Spectre": ["cast": ["Daniel Craig", "Christoph Waltz", "Léa Seydoux", "Ralph Fiennes", "Monica Bellucci", "Naomie Harris"]]]

var leadActor: String = ""

// Enter code below

if let movieName = movieDictionary["Spectre"], let castList = movieName["cast"] {
   var leadActor = castList[0]
}

1 Answer

Chase It looks like you're trying to create a new variable called leadActor instead of updating the variable that's already been declared above.

Example consider the following code:

var x = 2

Let's say you wanted to update the value of x to 3. You wouldn't declare a new variable named x and set it to 3, you would just type:

x = 3

Hope this helps!

Chase Maddox
Chase Maddox
Courses Plus Student 5,461 Points

Haha yeah I knew it was something simple I was overlooking. Thanks so much Christopher!