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 Closures in Swift 2 Building Standard Library Functions Using Filter

Need help on the Using Filters code challenge

my code is raising an error " Make sure you're assigning the results of the filter operation to a constant named oddNumbers" but i don't understand what i am doing wrong. Please help thanks!

filter.swift
let numbers = [10,423,802,765,943,12,405,230,1348,128,237].filter { $0 % 2 != 0 }
let oddValues = numbers.filter

2 Answers

David Papandrew
David Papandrew
8,386 Points

Sam, the closure needs to follow the numbers.filter call when you declare the oddValues constant.

Here's how the code should look:

let numbers = [10,423,802,765,943,12,405,230,1348,128,237]
let oddValues = numbers.filter { $0 % 2 != 0 }
Jhoan Arango
Jhoan Arango
14,575 Points

Hello Sam:

There are two ways of doing it.

// 1 )

let numbers = [10,423,802,765,943,12,405,230,1348,128,237].filter { $0 % 2 != 0 }
let oddValues = numbers

// 2 ) 

let numbers = [10,423,802,765,943,12,405,230,1348,128,237]
let oddValues = numbers.filter { $0 % 2 != 0 }

You were doing it right, but when you were assigning "numbers" to the "oddValues" constant, you were calling the filter closure again.

Good luck