Какао, как отобразить значение с плавающей запятой с одним десятичным значением без округления - PullRequest
0 голосов
/ 16 февраля 2012

У меня есть значение с плавающей запятой, но когда мне нужно представить пользователю, мне нужно, чтобы оно показывало с точностью до одного знака после запятой, без округления.так что в основном мне нужно усечь до одного знака после запятой.например 95,56 -> 95,5

Ответы [ 3 ]

6 голосов
/ 16 февраля 2012

NSNumberFormatter сделает это за вас.

-setMaximumFractionDigits: -setRoundingMode:

Обновление

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
  @autoreleasepool {
    NSNumberFormatter * nf = [[NSNumberFormatter new] autorelease];
    [nf setMaximumFractionDigits:1];
    [nf setRoundingMode:NSNumberFormatterRoundFloor];
    NSLog(@"The number is '%@'", [nf stringFromNumber:[NSNumber numberWithDouble:95.56]]);
  }
  return 0;
}

Выход:

2012-02-16 02: 39: 49.799 NumberFormatter [14592: 903] Это число '95 .5 '

5 голосов
/ 16 февраля 2012

попробуйте на этом примере

float t = 25.55;
NSLog(@"%.1f", t);

показывает 25,5, если вы установите% .2f, если вы получите 25,55

1 голос
/ 16 февраля 2012

Должно быть так

код sudo

преобразование числа в строку.

find "."в строке.

сделать подстроку от начала до "."позиция +1

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