Erhalten Sie 'Nan' beim Einfügen der Methode in StringwithFormat
-
14-10-2019 - |
Frage
Ich habe einige Methoden vereinfacht, um das Verständnis und die Korrektur des Fehlers zu erleichtern. Ich bekomme eine 'Nan', anstatt die Nummer zu bekommen und verstehe nicht warum. Ich möchte die GetNumber -Methode in die Return -Anweisung einfügen. Wenn ich die Methode darin habe, gibt es eine Na -Reihe zurück, aber wenn ich nur die 26 darin einsetzte, kehrt 26 zurück, was ich will.
-(double) getNumber { return 26; }
-(NSString *) convertToString {
return [NSMutableString stringWithFormat: @"%Lf",[self getNumber]];
// returns 'nan' when I replace [self getNumber] with 15 I get 15
}
Lösung
Vielleicht möchten Sie "%f" anstelle von "%lf" verwenden, da Sie a double
, kein long double
Andere Tipps
Sie haben ein paar Probleme in Ihrem Code.
- Geben Sie ein Doppel zurück, keine Ganzzahl in
getNumber
. Während automatischer Zwang auftritt, schreiben Sie sauberen Code. - Verwenden Sie das
%g
Formatspezifizierer, nicht%Lf
.%g
ist für Doppel.
Es ist Ihr Formatspezifizierer. Sie sollten "%g" verwenden, um ein Doppel zu formatieren.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow