0

我想从文本字段中读取许多不同的整数值,为此我有以下代码:

NSString *string1,*string2;
string1= [textField stringValue];
int i,c;
c=0;
NSInteger values[50];
for (i=0; i<50; ) {
    string2=[NSString stringWithFormat:@"%@%i%s",@" ",i,","];

    NSRange range=[string1 rangeOfString:string2];

    if (range.location != NSNotFound) {
        values[c]=i;
        c=c+1;

    }
    i=i+1;
}

没有问题,但它无法读取字符串中的第一个数字,如“2、3、15”,但我希望它也可以读取这样的字符串,所以有人可以帮我解决这个问题。

如果我像这样@“i”,“,”那样制作string2,它会导致像15这样的值出现问题,因为它读取5和15

4

1 回答 1

2

不如这样做:

NSArray *integerStrings = [[textField stringValue] componentsSeparatedByString:@","];

for (NSString *integerString in integerStrings) {
    NSDecimalNumber *number = [NSDecimalNumber decimalNumberWithString:integerString];

    // do whatever you want with the number...
}

或者,如果数字始终是整数,则循环可以是:

for (NSString *integerString in integerStrings) {
    NSInteger number = [integerString integerValue];

    // do whatever you want with the number...
}
于 2013-06-23T10:43:28.200 回答