The Swift Programming Language / Swift язык программирования - Книга на русском: Control Flow
| Английский оригинал | Перевод на русский | |
|---|---|---|
Сожалеем, но текст оригинала доступен только зарегистрированным пользователям. |
Используйте if и switch для условий и for-in, for, while и do-while для циклов. idevil 17.09.14 в 21:42 |
|
|
Скобки вокруг переменной в условиях или циклах опциональны. Фигурные скобки вокруг тела [цикла или ветви условия] idevil 17.09.14 в 21:44 |
||
|
обязательны. idevil 17.09.14 в 21:44 |
||
|
let individualScores = [75, 43, 103, 87, 12] idevil 17.09.14 в 21:44 |
||
|
var teamScore = 0 idevil 17.09.14 в 21:45 |
||
|
for score in individualScores { idevil 17.09.14 в 21:45 |
||
|
if score > 50 { idevil 17.09.14 в 21:45 |
||
|
teamScore += 3 idevil 17.09.14 в 21:45 |
||
|
} else { teamScore += 1 idevil 17.09.14 в 21:45 |
||
|
} idevil 17.09.14 в 21:45 |
||
|
} idevil 17.09.14 в 21:45 |
||
|
teamScore idevil 17.09.14 в 21:46 |
||
|
В конструкции if условие должно быть Булевым выражением — это означает, что код idevil 17.09.14 в 21:46 |
||
|
такой как if score { ... } будет ошибкой, а не будет неявно сравнен с нулем. idevil 17.09.14 в 21:48 |
||
|
Вы можете использовать if и let вместе чтобы работать со значениями, которые могут быть потеряны. Эти значения obiken 19.10.14 в 14:14 |
||
|
представлены как optionals. Optional значения либо содержат значения, либо содержат nil чтобы obiken 19.10.14 в 14:18 |
||
|
показать, что значение пропущено. Напишите вопросительный знак (?) после типа значения чтобы obiken 19.10.14 в 14:18 |
||
|
пометить значение как optional obiken 19.10.14 в 14:20 |
||
|
var optionalString: String? = "Hello" obiken 19.10.14 в 14:22 |
||
|
optionalString == nil obiken 19.10.14 в 14:22 |
||
|
var optionalName: String? = "John Appleseed" obiken 19.10.14 в 14:22 |
||
|
var greeting = "Hello!" obiken 19.10.14 в 14:22 |
||
|
if let name = optionalName { obiken 19.10.14 в 14:22 |
||
|
greeting = "Hello, \(name)" obiken 19.10.14 в 14:22 |
||
|
} obiken 19.10.14 в 14:23 |
||
|
ЭКСПЕРИМЕНТ keo82 05.06.14 в 09:02 |
||
|
Измените OptionalName на nil. Что за greeting вы получите? Добавьте else чтобы устанавливать разные приветствия если obiken 19.10.14 в 14:25 |
||
|
optionalName - nil. obiken 19.10.14 в 14:25 |
||
|
Если optional значение стало nil, условие не выполняется и код в фигурный скобках пропускается. obiken 19.10.14 в 14:29 |
||
|
let vegetable = "red pepper" obiken 19.10.14 в 14:29 |
||
|
switch vegetable { obiken 19.10.14 в 14:29 |
||
|
case "celery": let vegetableComment = "Add some raisins and make ants on a log." obiken 19.10.14 в 14:29 |
||
|
case "cucumber", "watercress": obiken 19.10.14 в 14:30 |
||
|
let vegetableComment = "That would make a good tea sandwich." obiken 19.10.14 в 14:30 |
||
|
case let x where x.hasSuffix("pepper"): obiken 19.10.14 в 14:30 |
||
|
let vegetableComment = "Is it a spicy \(x)?" obiken 19.10.14 в 14:30 |
||
|
default: obiken 19.10.14 в 14:30 |
||
|
vegetableComment = "Everything tastes good in soup." obiken 19.10.14 в 14:30 |
||
|
ЭКСПЕРИМЕНТ keo82 05.06.14 в 09:02 |
||
|
Попытайтесь убрать значение по умолчанию. Какую ошибку вы получите? obiken 19.10.14 в 14:27 |
||
|
После исполнения кода внутри switch case который совпал, программа выходит из obiken 19.10.14 в 14:32 |
||
|
утверждения switch. Исполнение не следует к следующему случаю, поэтому не нужно obiken 19.10.14 в 14:32 |
||
|
постоянно выходить из switch в конце каждого case. WRS 12.07.16 в 06:30 |
||
|
Вы используете for-in, чтобы перебирать предметы в словаре, предоставляя пару имен, чтобы использовать для obiken 19.10.14 в 14:36 |
||
|
каждой key-value пары. obiken 19.10.14 в 14:36 |
||
|
let interestingNumbers = [ obiken 19.10.14 в 14:37 |
