Search code examples
iosswiftnsnumber

Swift error while operations with NSNumbers


I'm using this code in a Swift project

        var coreDataArray:NSArray = fetchFromCoreData() // Return an array of record
        var mediumValue:NSNumber
        var tmp:NSNumber

        for(var i = 0; i < coreDataArray.count; ++i)
        {
            tmp = coreDataArray[i].score // The .score value is set as Float in .xcdatamodel
            mediumValue = mediumValue + tmp
        }

i get this error on the line mediumValue = mediumValue + tmp

Could not find an overload for '+' that accepts the supplied arguments

Any advice??


Solution

  • You can't add NSNumber's together—they are simply objects that encapsulate number values.

    Instead of making mediumValue an NSNumber, try using a Float instead.