2016-10-05 251 views
1

我想检查一个数组是否包含日期,以便我可以给iOS-Charts的分数。我有过去x天的数组和有效日期的数组。如果日期无效,则另外计算得分score = 0。不过,我认为我没有在正确的部分找到for。Swift检查数组是否包含在另一个数组中

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不合法分数,并返回双重索引。

+0

http://stackoverflow.com/questions/25714985/how-to-确定-如果酮阵列包含-所有元素-的-另一个阵列功能于迅速 –

回答

2

itemarrayOfDates成员,而不是一个索引,所以尝试改变

if hbiValidArray.contains(arrayOfDates[item]) 

if hbiValidArray.contains(item) 
相关问题