objective-C - 将float转换为字符串的其他方法

Spa*_*Dog 38 iphone objective-c

我知道你可以使用转换为浮点数

NSString *myString = [NSString stringWithFormat:@"%f", myFloat];
Run Code Online (Sandbox Code Playgroud)

我的问题是Objective-C中存在哪些其他方法可以做到这一点?

谢谢.

Jon*_*an. 44

你可以使用NSNumber

NSString *myString = [[NSNumber numberWithFloat:myFloat] stringValue];
Run Code Online (Sandbox Code Playgroud)

但是按照你的方式做到这一点没有问题,事实上你在问题中的方式更好.


ram*_*880 12

以一种简单的方式

NSString *floatString = @(myFloat).stringValue;
Run Code Online (Sandbox Code Playgroud)


The*_*mer 6

您可以创建自己的类别方法.就像是

@interface NSString (Utilities)

+ (NSString *)stringWithFloat:(CGFloat)float

@end

@implementation NSString (Utilities)

+ (NSString *)stringWithFloat:(CGFloat)float
{
    NSString *string = [NSString stringWithFormat:@"%f", float];
    return string;
}

@end
Run Code Online (Sandbox Code Playgroud)

编辑

将其更改为类方法,并将类型更改floatCGFloat.

您可以将其用作:

NSString *myFloat = [NSString stringWithFloat:2.1f];
Run Code Online (Sandbox Code Playgroud)