Ios 整数中的值错误。为什么?

Ios 整数中的值错误。为什么?,ios,nsnumber,nsuinteger,Ios,Nsnumber,Nsuinteger,以下是MyManager NumberofBeddrooms属性的设置方式: @property(nonatomic, assign) NSUInteger numberOfBedrooms; 这是我如何从文本框为其赋值的: myManager.numberOfBedrooms = (NSUInteger) self.bedroomTextField.text; When i enter a 1 in text box, and do the following, I get large

以下是MyManager NumberofBeddrooms属性的设置方式:

@property(nonatomic, assign) NSUInteger numberOfBedrooms;
这是我如何从文本框为其赋值的:

 myManager.numberOfBedrooms = (NSUInteger) self.bedroomTextField.text;

When i enter a 1 in text box, and do the following, I get large values like 304284 WHy?

NSLog(@"bedrooms is: %@", [NSNumber numberWithUnsignedInt: myManager.numberOfBedrooms] );
NSLog(@"bedrooms is: %d", myManager.numberOfBedrooms );
改为:

 myManager.numberOfBedrooms = (NSUInteger) [self.bedroomTextField.text intValue];
改为:

 myManager.numberOfBedrooms = (NSUInteger) [self.bedroomTextField.text intValue];
无法执行此强制转换(正在将对象转换为int):

你应该这样做:

myManager.numberOfBedrooms = [self.bedroomTextField.text intValue];
无法执行此强制转换(正在将对象转换为int):

你应该这样做:

myManager.numberOfBedrooms = [self.bedroomTextField.text intValue];

为什么是intValue而不是IntegerValue?“intValue”是NSString的实例方法,NSString是UITextField的.text属性中返回的对象。“IntegerValue”不是。为什么是intValue而不是IntegerValue?“intValue”是NSString的实例方法,NSString是UITextField的.text属性中返回的对象。“IntegerValue”不是。