Ich möchte konvertieren string
data
zu NSInteger
.
Ich möchte konvertieren string
data
zu NSInteger
.
Antworten:
Wenn die Zeichenfolge eine lesbare Darstellung einer Zahl ist, können Sie Folgendes tun:
NSInteger myInt = [myString intValue];
[myString intValue]
ist eine dunkle Seite ahaha
[@"Test" integerValue]
wird es zurückgegeben, 0
weil Test
es keine Zahl ist. Dies ist ein unsicherer Weg, dies zu tun.
[myString intValue]
gibt einen cType "int" zurück
[myString integerValue]
gibt a zurück NSInteger
.
In den meisten Fällen finde ich diese einfachen Funktionen, indem ich mir die Klassenreferenzen von Äpfeln ansehe. Der schnellste Weg dorthin ist das Klicken auf die Schaltfläche [Option] und das Doppelklicken auf die Klassendeklarationen (in diesem Fall NSString).
Ich habe festgestellt, dass dies die richtige Antwort ist.
NSInteger myInt = [someString integerValue];
NSNumber *tempVal2=[[[NSNumberFormatter alloc] init] numberFromString:@"your text here"];
Gibt NULL zurück, wenn Zeichenfolge oder NSNumber
NSInteger intValue=[tempVal2 integerValue];
Gibt eine Ganzzahl von NSNumber zurück
int myInt = [myString intValue];
NSLog(@"Display Int Value:%i",myInt);
Dies ist sicherer als integerValue:
-(NSInteger)integerFromString:(NSString *)string
{
NSNumberFormatter *formatter=[[NSNumberFormatter alloc]init];
[formatter setNumberStyle:NSNumberFormatterDecimalStyle];
NSNumber *numberObj = [formatter numberFromString:string];
return [numberObj integerValue];
}