2011-02-16 51 views
1

我不確定這裏發生了什麼。出於某種原因,NSString似乎不願意加載double值d。NSString不加載雙值

這裏是我的代碼:

-(NSString*)minuteFormat:(double) d{ 
    NSString* mystring; 
    if(d >= 10){ 
     mystring = [NSString stringWithFormat:@"%d", d]; 
    }else{ 
     mystring = [NSString stringWithFormat:@"0%d",d]; 
    } 
    return(mystring); 


} 

不管d的值,這就是被退回的唯一的事情是0或00(我敢肯定,d是越來越輸入正確的,因爲我用斷點檢查。)

有人能告訴我發生了什麼事嗎?

+0

`%d`爲十進制**整數**。 – 2011-02-16 20:30:55

回答

2

%d是一個十進制整數格式字符串。雙倍嘗試%lf

0

應使用%F(雙)這樣

了mystring = [NSString的stringWithFormat:@ 「%F」 中,f];

或者做一個值的類型轉換。爲此,您可以使用[yourString floatValue]