Набор (Set), так же известный как множество — это неупорядоченная коллекция уникальных элементов. В отличие от массивов у элементов набора нет четкого порядка следования, важен лишь факт наличия некоторого значения в наборе. Определенное значение элемента может существовать в нем лишь единожды, то есть каждое значение в пределах одного набора должно быть уникальным. Возможно, в русскоязычной документации по языку Swift вы встречали другое название наборов — множества.
Исходя из определения набора, ясно, что он позволяет собрать множество уникальных значений в пределах одного.
Какие из выражений не вызовут ошибок и вернут набор (т.е. функция type(of:)
должна вернуть Set
)
var set1 = [1, 2, 3, 4, 5] var set2: Set = [1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0] var set3: Set = ["a","c"] var set4 = Set(arrayLiteral: -0, +0, 1, 2, 3) var set5 = Set(arrayLiteral: 0, 1, 2, 3, 4)
set1
— это массив, а не наборtype(of:set1) // Array.Type
set2
— вернет корректный набор, но в нем будет содержаться всего 10 элемент, а не 11, как передано в литерале (есть повторяющийся элемент «1»)type(of:set2) // Set.Type
set3
— корректный наборtype(of:set3) // Set.Type
set4
— корректный набор, но как и у set2 будет исключен дублирующий элементtype(of:set4) // Set.Type
set5
— корректный наборtype(of:set5) // Set.Type
Что будет выведено на консоль в результате выполнения кода?
var mySet:Set = [] mySet.insert(13.4) print( type (of: mySet.count ) )
Что будет выведено на консоль в результате выполнения кода?
var mySet2: Set = [13.4, 15.1] print( mySet2.contains( Double(13.4) ) )
true
1 Comment
Опечатка в правильном ответе задания 6. Значения набора taskSet2 такие же как и taskSet1, а должны быть с 5 по 15.