Сегодня я просто проходил некоторые основные быстрые концепции и работал с некоторыми примерами, чтобы понять эти концепции. Сейчас я закончил изучение кортежей.
У меня есть одно сомнение в том, что нужно использовать кортежи? Я сделал несколько рывков на этом, вот что я получил:
Мы можем вернуть несколько значений из функции. Хорошо, но мы также можем сделать это, возвращая массив.
Array ok, но мы можем вернуть несколько значений разных типов. Хорошо, но это также можно сделать с помощью массива AnyObject, например:
func calculateStatistics (scores:[Int])->[AnyObject]
{
var min = scores[0]
var max = scores[0]
var sum = 0
for score in scores
{
if score > max{
max = score
}
else if score < min{
min = score
}
sum += score
}
return [min,max,"Hello"]
}
let statistics = calculateStatistics([25,39,78,66,74,80])
var min = statistics[0]
var max = statistics[1]
var msg = statistics[2] // Contains hello
Мы можем назвать объекты, присутствующие в кортежах. Хорошо, но я могу использовать словарь AnyObject.
Я не говорю, зачем использовать кортежи, когда мы это получили. Но должно быть что-то, что может сделать только кортеж, или его легко сделать только с кортежами. Более того, люди, которые быстро создали, не стремились бы к скоплению, если бы не было веской причины. Поэтому у них должна была быть веская причина для его привлечения.
Итак, ребята, пожалуйста, дайте мне знать, есть ли какие-либо конкретные случаи, когда кортежи - лучшая ставка.
Спасибо заранее.