2015-11-25 3 views
0

Согласно инструкции Switch в Swift, что означает «провалиться»?Как я могу принудительно выполнить следующий случай в Swift?

«Проваливается» приводит к казни ...?

Пример:

let integerToDescribe = 5 
var description = "The number \(integerToDescribe) is" 
switch integerToDescribe { 
case 2, 3, 5, 7, 11, 13, 17, 19: 
    description += " a prime number, and also" 
    fallthrough 
default: 
    description += " an integer." 
} 
print(description) 
+1

Почему вы не проверяете это и не видите, что происходит? – JAL

+0

Этот пример кода в книге Swift сопровождается точным описанием пути кода с пояснениями. –

+0

«Проваливается» заставляет казнить ...? Я знаю. Я прошу убедиться, что я прав. Может быть, я вижу, что происходит ... но я не могу это получить? По-любому никто не ответил да/нет. Только глобальное описание. – Oleksandr

ответ

1

Он делает именно то, что он говорит - ключевое слово fallthrough «проваливается» в следующий случай в выражении вашего переключателя.

Исполнительное ваш пример как площадка:

Fallthrough

Если вы закомментирована fallthrough, то default случае не будет достигнута.

+0

Спасибо. Но вы не ответили на вопросы. Я не могу это получить. Так что я спрашиваю! – Oleksandr

+0

Да, это «заставляет исполнение» в том смысле, что последующий случай будет выполнен. –

1

Swift switch заявления разорвать на каждом случае, в отличие от заявлений переключателя C или Objective-C. fallthrough позволяет проверять значение на «0» до следующего case. Таким образом, в вашем коммутаторе значение 5 добавит «простое число, а также» и «целое число». до description, потому что он пойман case 2, 3, 5, 7, 11, 13, 17, 19:, и default кейс.

+0

Спасибо. Но вы не ответили на вопрос №2. Я не могу это получить. Так что я спрашиваю! – Oleksandr

+0

@ АлександрЖелезняк 'fallthrough' заставляет переключатель переходить к следующему' case'. – JAL

Смежные вопросы