Подтвердить что ты не робот

Итерировать массив w/явный тип объекта в Swift

У меня есть массив:

let individualScores = [75, 43, 103, 87, 12]

И я повторяю так:

for score in individualScores {

}

Однако существует ли способ явно объявить тип объекта? Я думаю, что это пригодится позже с обычными объектами или по другим причинам. Что-то вроде:

for Integer score in individualScores {

}
4b9b3361

Ответ 1

При вводе переменной вы делаете:

var score: Int

И вы делаете то же самое в цикле:

for score: Int in individualScores {

}

В этом отношении он кажется довольно последовательным.

Ответ 2

да его возможный

let individualScores:Int[] = [75, 43, 103, 87, 12]

for score:Int in individualScores {

}

Ответ 3

Да. Вы можете явно указать тип, если хотите.

let individualScores = [75, 43, 103, 87, 12]

for score: Int in individualScores {
    println(score)
}

Ответ 4

Явные объявления типов следуют за объявлением идентификатора с двоеточием.

for score: Int in individualScores {
    // ...
}

let π: Double = 3.1415926535897932
var x: Int = 10

Вы можете прочитать "x is Int". См. Быстрый тур.

Переменная цикла (score) явно и строго типизирована независимо от того, объявляете ли вы тип или нет - он исходит из типа массива, через который выполняется итерация. Swift знает, что individualScores - это Int[], сокращение от Array<Int>, потому что вы объявили его целыми литералами. Подробнее о том, как это работает, см. Generics.