Ho bisogno di formattare un float (titolo accattivante, lui?) In 2 posizioni decimali, ma solo se quelle posizioni decimali hanno valori che non sono zero. Esempio:Formattazione di oggetti fluttuanti nell'obiettivo C
Ho un NSTextField chiamato 'risposta', dopo che faccio qualche calcolo matematico con un paio di float, voglio assegnare la mia variabile 'answerFloat' al campo 'risposta' NSTextField. Finora ho:
[answer setStringValue:[NSString stringWithFormat:@"%.2f", answerFloat]];
Ma che imposta qualcosa come 45 a 45,00. Voglio che i numeri interi vengano visualizzati senza gli zeri e che tutti i numeri decimali vengano visualizzati con i rispettivi valori decimali.
Devo eseguire qualche tipo di controllo prima di darlo a stringWithFormat? O NSString offre un modo per gestire questo?
In realtà pensavo di aver provato% g. Ho appena provato in questo modo: [answer setStringValue: [NSString stringWithFormat: @ "% 2.02g", answerFloat]]; e ha funzionato come un fascino. Grazie! –
il problema con questo è che se il numero è abbastanza grande sarà messo in forma esponenziale. Non penso che ci sia un modo per ottenere questo comportamento solo con le stringhe di formato e senza rischiare una forma esponenziale. –