Swift检查数组是否包含在另一个数组中

时间:2016-10-05 09:51:22

标签: arrays swift date ios-charts

我正在尝试检查数组中是否包含日期,以便我可以为iOS-Charts提供分数。我有一个过去x天的数组和一系列有效日期。如果日期无效,则score = 0计算得分。但是,我不认为我的部分是正确的。

func hbiScoreOnCertainDayForLast(days: Int, index: Int) ->(Double){
  let hbiValidArray = datesWithSavedDataForLast(days: days)

  var answer = [Double]()
  let arrayOfDates = today.arrayOfDateForPreviousDays(numberOfDays: days)

  for item in arrayOfDates {
    if hbiValidArray.contains(arrayOfDates[item]){
      answer.append((harvyeBradshawModel.harveyBradshawIndexScore(item as Date)!.doubleValue))
    } else {
      answer.append(0.0)
    }
  }

  var x = Double()
  if answer.count > 0 {
    x = answer[index]
  }
  return x
}

日期数组打印:

[2016-10-04 09:19:23 +0000, 2016-10-03 09:19:23 +0000, 2016-10-02 09:19:23 +0000, 2016-10-01 09:19:23 +0000, 2016-09-30 09:19:23 +0000, 2016-09-29 09:19:23 +0000, 2016-09-28 09:19:23 +0000]

我希望这些天能够得出一系列得分,其中0表示无效分数,并返回双倍索引。

1 个答案:

答案 0 :(得分:2)

itemarrayOfDates的成员,而不是其中的索引,因此请尝试更改

if hbiValidArray.contains(arrayOfDates[item])

if hbiValidArray.contains(item)