比方說你獲得到一個金額的字符串NSString *countStr =@"此處為你得到的數(shù)據(jù)";
1.[countStr intValue ]锡搜;最大轉(zhuǎn)換字符串為“2147483647”是不會出錯的橙困,哪怕轉(zhuǎn)換大1,也就是當(dāng)轉(zhuǎn)換字符串為“2147483648”的時(shí)候耕餐,用該方法轉(zhuǎn)換出來的結(jié)果一直都會是“2147483647”凡傅,當(dāng)然,比“2147483647”小的字符串是可以正確轉(zhuǎn)換的
2.[countStr floatValue ]肠缔;這個轉(zhuǎn)換只有小數(shù)點(diǎn)前面只有一位的時(shí)候轉(zhuǎn)換結(jié)果和字符串一致夏跷,其它的都會有偏差
3.[countStr longLongValue ];這個方法最大可轉(zhuǎn)換字符串為“9223372036854775807”明未,也就是說這個方法轉(zhuǎn)換比它小的任何一個長整形的都是正確的槽华,哪怕是比它大1,轉(zhuǎn)換的時(shí)候都會有偏差
4.[countStr doubleValue ]趟妥;這個方法的話猫态,當(dāng)你轉(zhuǎn)換有小數(shù)點(diǎn)的時(shí)候,在小數(shù)點(diǎn)前的位數(shù)小于11的時(shí)候,轉(zhuǎn)換出來的結(jié)果是和字符串是一致的亲雪,其它情況都會有偏差
以上3勇凭、4情況,小數(shù)點(diǎn)之后的位數(shù)均須按照系統(tǒng)限定位數(shù)义辕,超出限制的一定和轉(zhuǎn)換字符串不一致