Лучший способ выполнить логику в одну строку - PullRequest
0 голосов
/ 11 декабря 2018

Есть ли лучший способ выполнить эту логику в одну строку?

- (BOOL)isValueInRange {
    return ((level.integerValue > 100) || (level.integerValue < 0)) ? NO : YES;
}

Ответы [ 2 ]

0 голосов
/ 11 декабря 2018

Не думаю, что вы избежите необходимости повторять level.integerValue дважды.

return !((level.integerValue > 100) || (level.integerValue < 0))

Вы также можете использовать NSLocationInRange:

NSLocationInRange(level.integerValue, NSMakeRange(0, 100)
0 голосов
/ 11 декабря 2018

Вы можете сделать:

return level.integerValue >= 0 && level.integerValue <= 100;

Это вернет true, если значение находится в диапазоне, и false, если это не так.

...