有小数点的格式化方法
-(NSString*)strmethodComma:(NSString*)string
{
NSString *sign = nil;
if ([string hasPrefix:@"-"]||[string hasPrefix:@"+"]) {
sign = [string substringToIndex:1];
string = [string substringFromIndex:1];
}
NSString *pointLast = [string substringFromIndex:[string length]-3];
NSString *pointFront = [string substringToIndex:[string length]-3];
NSInteger commaNum = (pointFront.length-1)/3;
NSMutableArray *arr = [NSMutableArray array];
for (NSInteger i = 0; i < commaNum+1; i++) {
NSInteger index = pointFront.length - (i+1)*3;
NSInteger leng = 3;
if(index < 0)
{
leng = 3+index;
index = 0;
}
NSRange range = {index,leng};
NSString *stq = [pointFront substringWithRange:range];
[arr addObject:stq];
}
NSMutableArray *arr2 = [NSMutableArray array];
for (NSInteger i = arr.count - 1; i>=0; i--) {
[arr2 addObject:arr[i]];
}
NSString *commaString = [[arr2 componentsJoinedByString:@","] stringByAppendingString:pointLast];
if (sign) {
commaString = [sign stringByAppendingString:commaString];
}
return commaString;
{
NSString *sign = nil;
if ([string hasPrefix:@"-"]||[string hasPrefix:@"+"]) {
sign = [string substringToIndex:1];
string = [string substringFromIndex:1];
}
NSString *pointLast = [string substringFromIndex:[string length]-3];
NSString *pointFront = [string substringToIndex:[string length]-3];
NSInteger commaNum = (pointFront.length-1)/3;
NSMutableArray *arr = [NSMutableArray array];
for (NSInteger i = 0; i < commaNum+1; i++) {
NSInteger index = pointFront.length - (i+1)*3;
NSInteger leng = 3;
if(index < 0)
{
leng = 3+index;
index = 0;
}
NSRange range = {index,leng};
NSString *stq = [pointFront substringWithRange:range];
[arr addObject:stq];
}
NSMutableArray *arr2 = [NSMutableArray array];
for (NSInteger i = arr.count - 1; i>=0; i--) {
[arr2 addObject:arr[i]];
}
NSString *commaString = [[arr2 componentsJoinedByString:@","] stringByAppendingString:pointLast];
if (sign) {
commaString = [sign stringByAppendingString:commaString];
}
return commaString;
}
无小数点格式化加逗号
-(NSString
*)countNumAndChangeformat:(NSString
*)num
{
int count = 0;
long long int a = num.longLongValue;
while (a != 0)
{
count++;
a /= 10;
}
NSMutableString *string = [NSMutableString stringWithString:num];
NSMutableString *newstring = [NSMutableString string];
while (count > 3) {
count -= 3;
NSRange rang = NSMakeRange(string.length - 3, 3);
NSString *str = [string substringWithRange:rang];
[newstring insertString:str atIndex:0];
[newstring insertString:@"," atIndex:0];
[string deleteCharactersInRange:rang];
}
[newstring insertString:string atIndex:0];
return newstring;
}
{
int count = 0;
long long int a = num.longLongValue;
while (a != 0)
{
count++;
a /= 10;
}
NSMutableString *string = [NSMutableString stringWithString:num];
NSMutableString *newstring = [NSMutableString string];
while (count > 3) {
count -= 3;
NSRange rang = NSMakeRange(string.length - 3, 3);
NSString *str = [string substringWithRange:rang];
[newstring insertString:str atIndex:0];
[newstring insertString:@"," atIndex:0];
[string deleteCharactersInRange:rang];
}
[newstring insertString:string atIndex:0];
return newstring;
}
本文介绍两种格式化数字的方法:一种适用于带小数点的数字,通过逆向分割并在合适位置添加逗号;另一种针对整数,同样采用逆向处理并插入逗号。这两种方法均可确保数字的易读性。
696

被折叠的 条评论
为什么被折叠?



