在迅速划分两个NSNumber?

时间:2015-03-15 13:24:26

标签: ios swift nsnumber divide

我想要分割两个NSNumber,但在代码的最后一行我得到错误:"无法调用' /'使用类型'的参数列表(@ Ivalue NSNumber,@ Ivalue NSNumber)'"

var firstnumber: NSNumber = object["numberone"] as NSNumber
var secondnumber: NSNumber = object["numbertwo"] as NSNumber
var calculated: NSNumber = firstnumber / secondnumber

任何人都可以帮我解决这个问题吗?

3 个答案:

答案 0 :(得分:7)

NSNumber是一个对象,它通过使用floatValueintegerValue等属性来保存可以作为不同类型进行检索的值。 NSNumber

所以nsnumber1 / nsnumber2就像做uiview1 / uiview2

一样

答案 1 :(得分:1)

如果您需要在NSNumber执行除法,则需要使用NSDecimalNumber

所以你需要执行如下划分:

let object = ["numberone" : "33", "numbertwo" : "33"]
var firstnumber: NSDecimalNumber =  NSDecimalNumber(string: object["numberone"])
var secondnumber: NSDecimalNumber =  NSDecimalNumber(string: object["numbertwo"])
var calculated: NSDecimalNumber = firstnumber.decimalNumberByDividingBy(secondnumber)

答案 2 :(得分:0)

我猜你的number1和number2是Float或Double,以Float为例:

var caculated = firstnumber.floatValue / secondnumber.floatValue as NSNumber