学习目标
1.NSString转为基本数据类型
学习过程
1.前面讲过基本数据类型可以通过NSNumber转换成NSString
2.NSString可以使用xxxValue方法转换成基本类型,xxx表示类型,
xxx可以为double, float, int, integer, longLong, bool,
也就是说NSString可以转为double型,float型, int型, NSInteger型
long long型, bool型, 请看NSNumber源代码
@interface NSString (NSStringExtensionMethods)
......
@property (readonly) double doubleValue;
@property (readonly) float floatValue;
@property (readonly) int intValue;
@property (readonly) NSInteger integerValue NS_AVAILABLE(10_5, 2_0);
@property (readonly) long long longLongValue NS_AVAILABLE(10_5, 2_0);
@property (readonly) BOOL boolValue NS_AVAILABLE(10_5, 2_0);
......
@end
3. intValue
NSString* str = @"xxx";
int a = [str intValue];
如果xxx为123,则a为123
如果xxx为123.23,则a为123
如果xxx为123.23Hello,则a为123
如果xxx为123.23Hello,则a为123
如果xxx为Hello,则a为0
如果xxx为Hello123.23,则a为0
4.longLongValue与intValue类似
5. integerValue与intValue类似,只是返回的是NSNumber*
6. floatValue
NSString* str = @"xxx";
float a = [str floatValue];
如果xxx为123,则a为123
如果xxx为123.23,则a为123.23
如果xxx为123.23Hello,则a为123.23
如果xxx为123.23Hello,则a为123.23
如果xxx为Hello,则a为0
如果xxx为Hello123.23,则a为0
7.doubleValue
与floatValue类似
8. boolValue
NSString* str = @"xxx";
BOOL a = [str boolValue];
如果xxx为123,则a为 YES (只要是非0的都返回YES)
如果xxx为0,则a为 NO
如果xxx为123.23Hello,则a为YES
如果xxx为a123.23Hello,则a为NO
如果xxx为Hello,则a为0