Почему цикл for в этом аргументе - PullRequest
3 голосов
/ 18 августа 2011
    for (int i=0; i<[rawNumber length]; i++) {
        NSString* chr = [rawNumber substringWithRange:NSMakeRange(i, 1)];
        if(doesStringContain(@"0123456789", chr)) {
            telNumber = [telNumber stringByAppendingFormat:@"%@", chr];
        }
    }

В чем логика этого? Что возвращает этот аргумент?

1 Ответ

5 голосов
/ 18 августа 2011

Похоже, что он удаляет все нечисловые символы, чтобы дать вам обычный старый номер телефона.

Я думаю, что telNumber определен перед этим циклом и использует значение telNumber где-то еще.

Допустим, rawNumber содержит следующее значение: (987)-654-3210.Цикл for выполняется в 14 раз больше, поскольку это длина rawNumber.Каждый раз, когда код получает один символ - в первый раз он получает первый символ, второй раз - второй символ и т. Д. Каждый раз в цикле код проверяет, находится ли символ в строке 0123456789;если это так, то код добавляет символ в переменную telNumber.Если символа нет в списке чисел (если в нашем примере это ( или ) или -), то он просто отбрасывается.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...