Работа с множествами
Множество (Set) - итерируемая коллекция без повторяющихся элементов.
В Scala есть как изменяемые, так и неизменяемые типы Set
.
В этом разделе демонстрируется неизменяемое множество.
Создание множества
Создание нового пустого множества:
val nums = Set[Int]()
// nums: Set[Int] = Set()
val letters = Set[Char]()
// letters: Set[Char] = Set()
Создание множества с исходными данными:
val nums = Set(1, 2, 3, 3, 3)
// nums: Set[Int] = Set(1, 2, 3)
val letters = Set('a', 'b', 'c', 'c')
// letters: Set[Char] = Set('a', 'b', 'c')
Добавление элементов в множество
В неизменяемое множество новые элементы добавляются с помощью +
и ++
,
результат присваивается новой переменной:
val a = Set(1, 2)
// a: Set[Int] = Set(1, 2)
val b = a + 3
// b: Set[Int] = Set(1, 2, 3)
val c = b ++ Seq(4, 1, 5, 5)
// c: Set[Int] = HashSet(5, 1, 2, 3, 4)
Стоит отметить, что повторяющиеся элементы не добавляются в множество, а также, что порядок элементов произвольный.
Удаление элементов из множества
Элементы из множества удаляются с помощью методов -
и --
:
val a = Set(1, 2, 3, 4, 5)
// a: Set[Int] = HashSet(5, 1, 2, 3, 4)
val b = a - 5
// b: Set[Int] = HashSet(1, 2, 3, 4)
val c = b -- Seq(3, 4)
// c: Set[Int] = HashSet(1, 2)
Ссылки: