Ответ 1
Вы можете использовать NSNumber
NSString *myString = [[NSNumber numberWithFloat:myFloat] stringValue];
Но нет проблем делать это так, как вы, на самом деле так, как вы в своем вопросе лучше.
Я знаю, что вы можете преобразовать float в строку, используя
NSString *myString = [NSString stringWithFormat:@"%f", myFloat];
Мой вопрос в том, какие существуют другие методы в Objective-C, которые могут сделать то же самое?
спасибо.
Вы можете использовать NSNumber
NSString *myString = [[NSNumber numberWithFloat:myFloat] stringValue];
Но нет проблем делать это так, как вы, на самом деле так, как вы в своем вопросе лучше.
Вы можете создать свой собственный метод категорий. Что-то вроде
@interface NSString (Utilities)
+ (NSString *)stringWithFloat:(CGFloat)float
@end
@implementation NSString (Utilities)
+ (NSString *)stringWithFloat:(CGFloat)float
{
NSString *string = [NSString stringWithFormat:@"%f", float];
return string;
}
@end
Edit
Изменен этот метод класса, а также изменил тип от float
до CGFloat
.
Вы можете использовать его как:
NSString *myFloat = [NSString stringWithFloat:2.1f];
простым способом
NSString *floatString = @(myFloat).stringValue;
float someVal = 22.3422f;
NSNumber* value = [NSNumber numberWithFloat:someVal];
NSLog(@"%@",[value stringValue]);