title: Values change when parsing a Property List
body: <p>I'm parsing a property list that includes and array of numbers. I then cast those numbers as an array of TimeIntervals. The array included in the .plist file reads: </p>
  
  <pre><code>[9.2,13.1,14.2,18,19.2,27.6,28.1,32.1]
  </code></pre>
  
  <p>The gist of the class:</p>
  
  <pre><code>class moveableElementNode: SKSpriteNode, EventListener {
  
    fileprivate var times = [TimeInterval]()
  
    func didMoveToScene() {
      unpackData()
  
      print(times)
    }
  
    func unpackData() {
      if let path = Bundle.main.path(forResource: "Data", ofType:    "plist") {
      if let dictionary = NSDictionary(contentsOfFile: path) {
        if (dictionary.object(forKey: "Data") != nil) {
          if let dataDict:[String : Any] = dictionary.object(forKey: "Data") as? [String : Any] {
            for (key, value) in dataDict {
              if key == "times" {
                times = value as! [TimeInterval]
              }
            }
          }
        }
      }
    }
  }
  }
  </code></pre>
  
  <p>For some reason when ! print the array to the console I get: [9.1999999999999993, 13.1, 14.199999999999999, 18.0, 19.199999999999999, 27.600000000000001, 28.100000000000001, 32.100000000000001]</p>
  
  <p>Can anyone tell me whats going on?? Why have these single decimal place numbers been distorted?</p>