iOS開發中讓數字金額每隔三位逗號隔開

前言:現在我們使用很多的理財或者支付軟件的時候會發現在金額的顯示的地方都會每隔三位用一個逗號隔開,這是因為什么呢? 其實這個作用主要是為了方便用戶一眼看出金額的數額,不用一位位的數。那么這個是如何實現的呢,其實也很簡單,廢話不多說之間上代碼。

.h 文件

#import<Foundation/Foundation.h>

@interfaceNSString (Comma)

+(NSString*)strmethodComma:(NSString*)string;

@end

.m 文件

#import"NSString+Comma.h"

@implementationNSString (Comma)

+(NSString*)strmethodComma:(NSString*)string

{

NSString*sign = nil;

if ([stringhasPrefix:@"-"]||[stringhasPrefix:@"+"]) {

sign = [stringsubstringToIndex:1];

string = [stringsubstringFromIndex:1];

}

NSString*pointLast = [stringsubstringFromIndex:[stringlength]-3];

NSString*pointFront = [stringsubstringToIndex:[stringlength]-3];

intcommaNum =([pointFrontlength]-1)/3;

NSMutableArray*arr = [NSMutableArrayarray];

for (inti =0; i < commaNum+1; i++) {

intindex =[pointFrontlength] - (i+1)*3;

intleng =3;

if(index <0)

{

leng =3+index;

index =0;

}

NSRangerange = {index,leng};

NSString*stq = [pointFrontsubstringWithRange:range];

[arraddObject:stq];

}

NSMutableArray*arr2 = [NSMutableArrayarray];

for (inti=[arrcount]-1; i>=0; i--) {

[arr2addObject:arr[i]];

}

NSString*commaString = [[arr2componentsJoinedByString:@","]stringByAppendingString:pointLast];

if (sign) {

commaString = [signstringByAppendingString:commaString];

}

return commaString;

}

@end

只要將這個方法實現,在使用的時候之間調用 +(NSString*)strmethodComma:(NSString*)string;方法就可以實現想要的結果。?


? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?注:這是一個風度翩翩的程序猿

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容