We just created a Sport
struct like this:
struct Sport {
var name: String
}
That has a name property that stores a String
. These are called stored properties, because Swift has a different kind of property called a computed property – a property that runs code to figure out its value.
We’re going to add another stored property to the Sport
struct, then a computed property. Here’s how that looks:
struct Sport {
var name: String
var isOlympicSport: Bool
var olympicStatus: String {
if isOlympicSport {
return "\(name) is an Olympic sport"
} else {
return "\(name) is not an Olympic sport"
}
}
}
As you can see, olympicStatus
looks like a regular String
, but it returns different values depending on the other properties.
We can try it out by creating a new instance of Sport
:
let chessBoxing = Sport(name: "Chessboxing", isOlympicSport: false)
print(chessBoxing.olympicStatus)
TAKE YOUR SKILLS TO THE NEXT LEVEL If you like Hacking with Swift, you'll love Hacking with Swift+ – it's my premium service where you can learn advanced Swift and SwiftUI, functional programming, algorithms, and more. Plus it comes with stacks of benefits, including monthly live streams, downloadable projects, a 20% discount on all books, and free gifts!
Sponsor Hacking with Swift and reach the world's largest Swift community!
Link copied to your pasteboard.