ios - How to know the type of number stored on NSNumber? -
this question has answer here:
- get type of nsnumber 11 answers
how know type of number stored on nsnumber object? in other words, there way check entry type of number when nsnumber created?
let's suppose store random number on nsnumber object:
nsnumber *intnumber = [nsnumber numberwithint:1]; of course want retrieve using intvalue method later:
int thevalue = [intnumber intvalue]; but if number came unknown source, api json response or whatever , parse nsdictionary, resulting on this:
{ "some key" : 1, "some other key" : 74.1234 } we can assume some key has int value, while some other key has double.
is there way check type appropriated parse value on each key? use like:
for (nsnumber *number in _arrayofnumbers) { if (/*number integer*/) { //do integer stuff } else if (/*number double*/) { //do double stuff } } i don't know if need use on real situation, wondering if there way check "entry type" of number.
thanks in advance.
use cfnumbergettype
cfnumbergettype((cfnumberref)number); you can throw value switch statement each value of enum cfnumbertype.
Comments
Post a Comment