NSString 到 NSNumber

Posted

技术标签:

【中文标题】NSString 到 NSNumber【英文标题】:NSString To NSNumber 【发布时间】:2013-03-22 05:10:34 【问题描述】:

所以这个问题困扰我太久了。我有一个UIAlertView,里面有一个textField,我需要textField 的值作为NSNumber。但是我尝试的一切都会给我随机的数字串。任何帮助将不胜感激。

int i = [[alertView textFieldAtIndex:0].text intValue];
NSNumber *number = [NSNumber numberWithInt:[[alertView textFieldAtIndex:0].text integerValue]];    


int number = [[dict objectForKey:@"integer"] intValue];

NSLog(@"text = %@", [alertView textFieldAtIndex:0].text);


NSString *alertText = [alertView textFieldAtIndex:0].text;

NSNumberFormatter * f = [[NSNumberFormatter alloc] init];
[f setNumberStyle:NSNumberFormatterNoStyle];
NSNumber * myNumber = [f numberFromString:[alertView textFieldAtIndex:0].text];


NSNumber *number = @([alertText intValue]);

NSString *string = @"54";
NSNumber *number = @([string intValue]);

NSLog(@"here we are: %i", number);

【问题讨论】:

相关:***.com/questions/1448804/… 我在问之前就看到了。但是当我运行该代码时,我得到了:159348080 请发布您的代码,您可以从 textfiled 中获得价值 在这里。这些都不起作用 我猜这些所有代码的方法都不一样。您定义了 int number 和 NSNumber * number。它必须给出重新定义的错误 【参考方案1】:

一旦看到这个,

NSString *string = @"123";
NSNumber  *aNum = [NSNumber numberWithInteger: [string integerValue]];
NSLog(@"%@",aNum);//NSString to NSNumber
NSInteger number=[string intValue];
NSLog(@"%i",number);//NSString to NSInteger

【讨论】:

我认为是 numberWithIntegerintegerValue 部分使它无论出于何种原因都能正常工作。无论如何,非常感谢。【参考方案2】:
NSString *string = @"54";
NSNumber *number = @([string intValue]);
NSLog(@"here we are: %i", number);

请尝试使用以下内容:

NSLog(@"here we are: %@", number);

由于您要转换为 NSNumber(对象)。您应该在 NSLog 语句中使用对象说明符 %@。

【讨论】:

【参考方案3】:

这是一个带有整数并使用 NSNumber 字面量的示例。如果您的字符串包含浮点数,您也可以使用floatValue 方法。

NSString *string = @"54";
NSNumber *number = @([string intValue]);

【讨论】:

第二行不应该是,NSNumber *number = [NSNumber numberWithInt:[string intValue]]; 这使用了 NSNumber 字面量,它们的含义相同。 哎呀。使用“%@”,因为它是一个对象。 掌心【参考方案4】:

@Aaron Wojnowski,

使用NSNumberFormatter如果你愿意,你也可以设置分组分隔符。

NSNumberFormatter *formatString = [[NSNumberFormatter alloc] init];
stringValue = textfield.text;
NSNumber *reqNumber = [formatString numberFromString:stringValue];

【讨论】:

以上是关于NSString 到 NSNumber的主要内容,如果未能解决你的问题,请参考以下文章

NSString 到 NSUInteger

如何绑定到 NSString?

将 NSString 附加到 NSURL?

NSString 到 NSurl

NSString 到 NSDate 的转换失败

初始化后有 EXC_BAD_ACCESS 到 NSString