A set is a collection which only contains unique items which are not repeatable. A BitSet is a collection of small integers as the bits of a larger integer. Non negative integers sets which represented as array of variable-size of bits packed into 64-bit words is called BitSets. The largest number stored in bitset is the memory of a bitset. It extends Set trait.
Syntax:
var BS : BitSet = BitSet(element1, element2, element3, ....)
Where BS is the name of created BitSet
In Scala, BitSet have two versions: scala.collection.immutable.BitSet
and scala.collection.mutable.BitSet
. They are almost identical but the mutable version changes the bits in place so immutable data structures are much better for concurrency.
Operations perform with BitSet
Initialize a BitSet : Below is the example to create or initialize BitSet.
Example :
import scala.collection.immutable.BitSet
object GFG
{
def main(args : Array[String])
{
println( "Initialize a BitSet" )
val bitSet : BitSet = BitSet( 0 , 1 , 2 , 3 )
println(s "Elements are = $bitSet" )
}
}
|
Output:
Initialize a BitSet
Elements are = BitSet(0, 1, 2, 3)
Check specific elements in BitSet :
Example :
import scala.collection.immutable.BitSet
object GFG
{
def main(args : Array[String])
{
println( "Initialize a BitSet" )
val bitSet : BitSet = BitSet( 0 , 1 , 2 , 3 )
println(s "Elements are = $bitSet" )
println(s "Element 2 = ${bitSet(2)}" )
println(s "Element 4 = ${bitSet(4)}" )
}
}
|
Output:
Initialize a BitSet
Elements are = BitSet(0, 1, 2, 3)
Element 2 = true
Element 4 = false
Adding an elements in BitSet : We can add an element in BitSet by using + sign. below is the example of adding an element in BitSet.
Example :
import scala.collection.immutable.BitSet
object GFG
{
def main(args : Array[String])
{
println( "Initialize a BitSet" )
val bs : BitSet = BitSet( 0 , 1 , 2 , 3 )
println(s "Elements are = $bs" )
val bs 1 : BitSet = bs + 10 + 11
println(s "Adding elements to BitSet = $bs1" )
}
}
|
Output:
Initialize a BitSet
Elements are = BitSet(0, 1, 2, 3)
Adding elements to BitSet = BitSet(0, 1, 2, 3, 10, 11)
Adding more than one element in BitSet : We can add more than one element in BitSet by using ++ sign. below is the example of adding more than one elements in BitSet.
Example :
import scala.collection.immutable.BitSet
object GFG
{
def main(args : Array[String])
{
println( "Initialize a BitSet" )
val bs : BitSet = BitSet( 0 , 1 , 2 , 3 )
println(s "Elements are = $bs" )
val bs 1 : BitSet = bs ++ BitSet( 4 , 5 , 6 )
println(s "Add more than one elements to BitSet = $bs1" )
}
}
|
Output:
Initialize a BitSet
Elements are = BitSet(0, 1, 2, 3)
Add more than one elements to BitSet = BitSet(0, 1, 2, 3, 4, 5, 6)
Remove element in BitSet : We can remove an element in BitSet by using – sign. below is the example of removing an element in BitSet.
Example :
import scala.collection.immutable.BitSet
object GFG
{
def main(args : Array[String])
{
println( "Initialize a BitSet" )
val bs : BitSet = BitSet( 0 , 1 , 2 , 3 )
println(s "Elements are = $bs" )
val bs 1 : BitSet = bs - 2
println(s "remove element from bitset = $bs1" )
}
}
|
Output:
Initialize a BitSet
Elements are = BitSet(0, 1, 2, 3)
remove element from bitset = BitSet(0, 1, 3)
Find the intersection between two BitSets : We can find intersection between two BitSets by using & sign. below is the example of finding intersection between two BitSets.
Example :
import scala.collection.immutable.BitSet
object GFG
{
def main(args : Array[String])
{
println( "Initialize two BitSets" )
val bs : BitSet = BitSet( 0 , 1 , 2 , 3 )
println(s "Elements of bitset1 are = $bs" )
val bs 1 : BitSet = BitSet( 4 , 5 , 3 , 6 )
println(s "Elements of bitset2 are = $bs1" )
println(s "Intersection of bitSet1 and bitSet2 = ${bs & bs1}" )
}
}
|
Output:
Initialize two BitSets
Elements of bitset1 are = BitSet(0, 1, 2, 3)
Elements of bitset2 are = BitSet(3, 4, 5, 6)
Intersection of bitSet1 and bitSet2 = BitSet(3)
Initializing an empty BitSet :
Example :
import scala.collection.immutable.BitSet
object GFG
{
def main(args : Array[String])
{
val emptyBitSet : BitSet = BitSet.empty
println(s "Empty BitSet = $emptyBitSet" )
}
}
|
Output:
Empty BitSet = BitSet()
Whether you're preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape,
GeeksforGeeks Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we've already empowered, and we're here to do the same for you. Don't miss out -
check it out now!