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 Object-Oriented Swift Properties Getter and Setter Methods

Ye Jin
Ye Jin
3,484 Points

I couldn't find any problem for the current code and the preview does not show any error....

I wrote the getter, setter and init functions, can not find any problem. The preview does not show anything...

class Temperature {
    var celsius: Float = 0.0
    var fahrenheit: Float {
        get {
          return fahrenheit
        }
        set {
          fahrenheit = newValue
          celsius = (fahrenheit - 32) / 1.8
        }
    }
    init(cel: Float, fah: Float){
      self.celsius = cel
      self.fahrenheit = fah
    }
}

1 Answer

Hi there,

I thought I'd share what was in my Playground as I think it will help you.

class Temperature {
    var celsius: Float = 0.0
    var fahrenheit: Float {
        get {
            return (celsius * 1.8) + 32
        }
        set {
            celsius = (newValue - 32) / 1.8
        }
    }
    init(celsius: Float) {
        self.celsius = celsius
    }
}

I hope that makes sense. The init only needs one value as one drives the other. The rest of the getter & setter code flows from that concept, really.

I hope it helps.

Steve.