Вы можете попробовать ниже код, он работает для меня:
class ViewController: UIViewController {
var arrDates = NSArray()
var arrResultDates = NSMutableArray()
override func viewDidLoad() {
super.viewDidLoad()
arrDates = ["12/01/1996","13/01/1996","15/01/1996","17/01/1996"]
let strStartDate = "\(arrDates.firstObject!)"
let strEndDate = "\(arrDates.lastObject!)"
let formatter = DateFormatter()
formatter.dateFormat = "dd/MM/yyyy"
//Get start date
var startDate = formatter.date(from: strStartDate)
let endDate = formatter.date(from: strEndDate) // last date
// Formatter for printing the date, adjust it according to your needs:
let fmt = DateFormatter()
fmt.dateFormat = "dd/MM/yyyy"
let calendar = NSCalendar.current
while startDate! <= endDate! {
startDate = calendar.date(byAdding: .day, value: 1, to: startDate!)!
let strDate = fmt.string(from: startDate!)
if arrDates.contains(strDate)
{
arrResultDates.add(strDate)
}
}
print(arrResultDates)
}
Надеюсь, это поможет вам:)