2017-01-05 10 views
0

Я проникаю свой код от Swift 2.3 Свифт 3. Перед тем как он работает нормально, после перенастройки я столкнулся не ожидали типа контекстной результат NSArray Вот мой кодSwift3: не ожидаемый тип контекстной результат NSArray

func setConfirmedBookingsAfterSorting() { 
     if let bookings = ContentService.sharedInstance.confirmedBookings { 
      self.confirmedBookings = (bookings as NSArray).sortedArray(using: [NSSortDescriptor(key: "startTime", ascending: true)]) 
     } 
    } 
+1

Почему бы просто не использовать родной род Swift? 'bookings.sort {$ 0.startTime <$ 1.startTime}' – Alexander

ответ

0
((bookings as NSArray).sortedArray(using: [NSSortDescriptor(key: "startTime", ascending: true)])) as NSArray 

попробуйте это.

+0

Это выглядит явно сложнее, чем [предложение Александра] (https://stackoverflow.com/questions/41476693/swift3-not-the-expected-contextual-result- type-nsarray # comment70159404_41476693): можете ли вы описать преимущества? – greybeard

+0

Не могли бы вы объяснить, как это работает? – brimstone