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 trialSimone Renaud
Courses Plus Student 1,948 PointsWhy is it best practice to use not operator in this case? Why can't we just write: let isWinner = (!10) Thanks
Is it because we need to establish that it can be any number < or > 10?
// Enter your code below
var initialScore = 8
initialScore += 1
let isWinner = (!10)
1 Answer
Brandon Mahoney
iOS Development with Swift Techdegree Graduate 30,149 PointsYou still have to compare initialScore to 10 not just assign the value of false to isWinner. Remember the goal is to check if initialScore is 10 or not.
var initialScore = 8
initialScore += 1
let isWinner = initialScore != 10
Also when you place ! in front of a object you are saying it is the opposite of it, not comparing. This is something used on type bool. You are attempting to use it here on type Int. Paste code below into a playground for a better understanding.
var isUserLoggedIn = true
print(isUserLoggedIn) //equals true
isUserLoggedIn = !isUserLoggedIn
print(isUserLoggedIn) //equals false
isUserLoggedIn = !isUserLoggedIn
print(isUserLoggedIn) //equals true again