Как вы можете проверить строку метки и присвоить 0 не числовой строке? - PullRequest
1 голос
/ 07 марта 2012

Я делаю то, что ниже, но я не уверен, что это может быть проблемой, потому что это «работает»

myLabel.text = @"--";
float myString = [myLabel.text floatValue];


NSLog(@"What is myLabel '--' text as a float? %@",myLabel.text);
// output is:  '--'


NSLog(@"What is value of myString '--' as float? %2.2f",myString);
// output is:  0.00

Я не вижу ничего плохого в выходных данных и форматах.У меня возник вопрос, почему «float myString» конвертирует '-' в 0,00, кажется, это может быть проблематично.

Если это не автоматическое действие, каков наилучший способ присвоить строку значению 0,00 после ее извлечения из метки?

1 Ответ

2 голосов
/ 07 марта 2012

Поскольку "--" не является допустимым значением с плавающей запятой, floatValue возвращает 0.0.

Из документации NSString:

[...] возвращает0.0, если получатель не начинается с правильного текстового представления числа с плавающей запятой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...