版本記錄
版本號(hào) | 時(shí)間 |
---|---|
V1.0 | 2017.06.28 |
前言
前面我簡(jiǎn)單的寫了些NSString的初始化,寫了幾篇,都不難蚯姆,但是可以對(duì)新手有一定的小幫助,對(duì)于大神級(jí)人物可以略過(guò)這幾篇浑槽,NSString本來(lái)就沒(méi)有難的蒋失,都是細(xì)枝末節(jié),忘記了查一下就會(huì)了桐玻,沒(méi)有技術(shù)難點(diǎn)篙挽,下面我們繼續(xù)~~~
1. NSString簡(jiǎn)單細(xì)說(shuō)(一)—— NSString整體架構(gòu)
2. NSString簡(jiǎn)單細(xì)說(shuō)(二)—— NSString的初始化
3. NSString簡(jiǎn)單細(xì)說(shuō)(三)—— NSString初始化
4. NSString簡(jiǎn)單細(xì)說(shuō)(四)—— 從URL初始化
5. NSString簡(jiǎn)單細(xì)說(shuō)(五)—— 向文件或者URL寫入
6. NSString簡(jiǎn)單細(xì)說(shuō)(六)—— 字符串的長(zhǎng)度
7. NSString簡(jiǎn)單細(xì)說(shuō)(七)—— 與C字符串的轉(zhuǎn)化
8. NSString簡(jiǎn)單細(xì)說(shuō)(八)—— 識(shí)別和比較字符串
9. NSString簡(jiǎn)單細(xì)說(shuō)(九)—— 字符串的合并
10. NSString簡(jiǎn)單細(xì)說(shuō)(十)—— 字符串的分解
11. NSString簡(jiǎn)單細(xì)說(shuō)(十一)—— 字符串的查找
12. NSString簡(jiǎn)單細(xì)說(shuō)(十二)—— 字符串的替換
13. NSString簡(jiǎn)單細(xì)說(shuō)(十三)—— 字符串的分行和分段
14. NSString簡(jiǎn)單細(xì)說(shuō)(十四)—— 字符串位置的計(jì)算
15. NSString簡(jiǎn)單細(xì)說(shuō)(十五)—— 字符串轉(zhuǎn)化為propertyList
16. NSString簡(jiǎn)單細(xì)說(shuō)(十六)—— 畫字符串
17. NSString簡(jiǎn)單細(xì)說(shuō)(十七)—— 字符串的折疊和前綴
18. NSString簡(jiǎn)單細(xì)說(shuō)(十八)—— 字符串中大小寫子母的變換
19. NSString簡(jiǎn)單細(xì)說(shuō)(十九)—— 根據(jù)映射獲取字符串
這一篇我們說(shuō)一下獲取字符串的數(shù)值。
獲取字符串的數(shù)值
一镊靴、@property(readonly) double doubleValue;
該屬性不包括包含任何空格的字符串铣卡,這個(gè)屬性上溢為HUGE_VAL 和-HUGE_VAL ,下溢為0.0偏竟,如果字符串不以浮點(diǎn)數(shù)開(kāi)頭煮落,則返回值為0。該屬性使用存儲(chǔ)在非本地化的格式化信息踊谋,使用NSScanner對(duì)象對(duì)字符串中的數(shù)值進(jìn)行本地化掃描蝉仇。
下面直接看代碼
/**
* 1.@property(readonly) double doubleValue;
*/
NSString *str1 = @"中國(guó)helloChina";
CGFloat doubleStr1 = [str1 doubleValue];
NSLog(@"doubleStr1 = %lf",doubleStr1);
NSString *str2 = @"12.3455";
CGFloat doubleStr2 = [str2 doubleValue];
NSLog(@"doubleStr2 = %lf",doubleStr2);
下面看輸出結(jié)果。
2017-06-29 00:13:25.136 NSString你會(huì)用嗎殖蚕?[2582:59710] doubleStr1 = 0.000000
2017-06-29 00:13:25.137 NSString你會(huì)用嗎轿衔?[2582:59710] doubleStr2 = 12.345500
結(jié)論:簡(jiǎn)單易用。
二睦疫、@property(readonly) float floatValue;
用法同一所示害驹,下面直接看代碼。
/**
* 2.@property(readonly) float floatValue;
*/
NSString *str1 = @"中國(guó)helloChina";
CGFloat floatStr1 = [str1 floatValue];
NSLog(@"floatStr1 = %lf",floatStr1);
NSString *str2 = @"12.3455";
CGFloat floatStr2 = [str2 floatValue];
NSLog(@"floatStr2 = %lf",floatStr2);
下面看輸出結(jié)果蛤育。
2017-06-29 00:21:58.769 NSString你會(huì)用嗎宛官?[2704:65889] floatStr1 = 0.000000
2017-06-29 00:21:58.770 NSString你會(huì)用嗎?[2704:65889] floatStr2 = 12.345500
結(jié)論:簡(jiǎn)單易用瓦糕,不多說(shuō)了底洗。
三、@property(readonly) int intValue;
該屬性不包括包含任何空格的字符串咕娄,這個(gè)屬性溢出值為INT_MAX 和INT_MIN枷恕,如果字符串不以有效的十進(jìn)制開(kāi)頭,則返回值為0谭胚。該屬性使用存儲(chǔ)在非本地化的格式化信息徐块,使用NSScanner對(duì)象對(duì)字符串中的數(shù)值進(jìn)行本地化掃描。
下面還是直接看代碼灾而。
/**
* 3.@property(readonly) int intValue;
*/
NSString *str1 = @"中國(guó)helloChina";
int intStr1 = [str1 intValue];
NSLog(@"intStr1 = %d",intStr1);
NSString *str2 = @"12";
int intStr2 = [str2 intValue];
NSLog(@"intStr2 = %d",intStr2);
下面看輸出結(jié)果胡控。
2017-06-29 00:26:43.611 NSString你會(huì)用嗎?[2783:69360] intStr1 = 0
2017-06-29 00:26:43.612 NSString你會(huì)用嗎旁趟?[2783:69360] intStr2 = 12
結(jié)論:簡(jiǎn)單好懂昼激。
四、@property(readonly) NSInteger integerValue;
它的用法和三差不多锡搜,下面直接看代碼橙困。
/**
* 4.@property(readonly) NSInteger integerValue;
*/
NSString *str1 = @"中國(guó)helloChina";
NSInteger intStr1 = [str1 integerValue];
NSLog(@"intStr1 = %ld",(long)intStr1);
NSString *str2 = @"12";
NSInteger intStr2 = [str2 integerValue];
NSLog(@"intStr2 = %ld",(long)intStr2);
下面看結(jié)果。
2017-06-29 00:32:25.223 NSString你會(huì)用嗎耕餐?[2885:74319] intStr1 = 0
2017-06-29 00:32:25.223 NSString你會(huì)用嗎凡傅?[2885:74319] intStr2 = 12
結(jié)論:簡(jiǎn)單不多說(shuō)。
五肠缔、@property(readonly) long long longLongValue;
該屬性不包括包含任何空格的字符串夏跷,這個(gè)屬性溢出值為L(zhǎng)LONG_MAX 和LLONG_MIN,如果字符串不以有效的十進(jìn)制開(kāi)頭明未,則返回值為0槽华。該屬性使用存儲(chǔ)在非本地化的格式化信息,使用NSScanner對(duì)象對(duì)字符串中的數(shù)值進(jìn)行本地化掃描趟妥。
下面看代碼猫态。
/**
* 5.@property(readonly) long long longLongValue;
*/
NSString *str1 = @"中國(guó)helloChina";
long long intStr1 = [str1 longLongValue];
NSLog(@"intStr1 = %lld",intStr1);
NSString *str2 = @"1239823";
long long intStr2 = [str2 longLongValue];
NSLog(@"intStr2 = %lld",intStr2);
下面看輸出結(jié)果。
2017-06-29 00:37:25.474 NSString你會(huì)用嗎披摄?[2990:79433] intStr1 = 0
2017-06-29 00:37:25.475 NSString你會(huì)用嗎亲雪?[2990:79433] intStr2 = 1239823
結(jié)論:簡(jiǎn)單不多說(shuō)了。
六行疏、@property(readonly) BOOL boolValue;
該屬性如果是“Y”,"y","T","t"或者1-9中的數(shù)字則返回YES匆光,這個(gè)方法忽略任何尾隨的字符,如果字符串不以有效的十進(jìn)制數(shù)字開(kāi)頭酿联,則返回NO终息,該屬性假設(shè)開(kāi)頭不包括空格且以十進(jìn)制開(kāi)頭,同時(shí)贞让,它也會(huì)忽略初始化字符串周崭,或者-/+后面跟著0。
下面看代碼喳张。
/**
* 6.@property(readonly) BOOL boolValue;
*/
NSString *str1 = @"T";
BOOL boolStr1 = [str1 boolValue];
NSLog(@"boolStr1 = %d",boolStr1);
NSString *str2 = @"mmnnn";
BOOL boolStr2 = [str2 boolValue];
NSLog(@"boolStr2 = %d",boolStr2);
下面看輸出結(jié)果续镇。
2017-06-29 00:51:33.184 NSString你會(huì)用嗎?[3139:89655] boolStr1 = 1
2017-06-29 00:51:33.185 NSString你會(huì)用嗎销部?[3139:89655] boolStr2 = 0
結(jié)論:簡(jiǎn)單易用摸航。
后記
未完制跟,待續(xù)~~~