У меня проблемы с преобразованием строки в целое число.Я гуглил это, но все, что я могу найти, - это как преобразовать int в строку.Кто-нибудь знает, как это сделать наоборот?Спасибо.
См. Справочник классов NSString .
NSString *string = @"5"; int value = [string intValue];
Как насчет
[@"7" intValue];
Дополнительно, если вы хотите NSNumber, вы можете сделать
NSNumber
NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc] init]; [numberFormatter numberFromString:@"7"];
Я использую:
NSInteger stringToInt(NSString *string) { return [string integerValue]; }
И наоборот:
NSString* intToString(NSInteger integer) { return [NSString stringWithFormat:@"%d", integer]; }
Swift 3.0:
Int("5")
или
let stringToConvert = "5" Int(stringToConvert)
Я должен был сделать что-то подобное, но хотел использовать геттер / сеттер для моего.В частности, я хотел вернуть long из текстового поля.Все остальные ответы тоже работали хорошо, я просто немного адаптировал свой, так как мой школьный проект развивался.
long ms = [self.textfield.text longLongValue]; return ms;
Это простое решение для преобразования строки в int
NSString *strNum = @"10"; int num = [strNum intValue];
, но когда вы получаете значение из текстового поля , тогда
int num = [txtField.text intValue];
, где txtField - это выход UITextField
Чтобы преобразовать число String в Int , необходимо сделать следующее:
let stringNumber = "5" let number = Int(stringNumber)
Вы также можете использовать как:
NSInteger getVal = [self.string integerValue];
Еще один способ: если вы работаете со строкой C, например, const char *, C native atoi() более удобен.
atoi()
Очень просто ..
int (name of integer) = [(name of string, no ()) intValue];