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 Introduction to Table Views Sorting Contacts Into Sections Creating Sectioned Data

'characters' is unavailable: Please use String directly' how to solve it in Swift 5? thank you

in "return String(firstName.characters.first!).uppercased()"

got this error 'characters' is unavailable: Please use String directly', how to solve it in Swift 5? thank you

1 Answer

Gene Bogdanovich
Gene Bogdanovich
14,618 Points

Hello! Yes, in newer versions of Swift there is no characters property on the String type. That's because now instances of String type are arrays in and of themselves. So you can treat them like so and call first right on the string.

Your extension should look like this:

extension Contact {
    var firstLetterForSort: String {
        return String(firstName.first!).uppercased()
    }
}

ะกะฟะฐัะธะฑะพ ะดัะดัŒะบะฐ!

Gene Bogdanovich
Gene Bogdanovich
14,618 Points

ะ’ัะตะณะดะฐ ะฟะพะถะฐะปัƒะนัั‚ะฐ!