In Scala Stack class
, the diff() method is used to find the difference between the two stacks. It deletes elements that are present in one stack from the other one.
Method Definition: def diff[B >: A](that: collection.Seq[B]): Stack[A]
Return Type: It returns a new stack which consists of elements after the difference between the two stacks.
Example #1:
import scala.collection.mutable. _
object GfG
{
def main(args : Array[String])
{
val s 1 = Stack( 1 , 2 , 3 , 4 , 5 )
val s 2 = Stack( 3 , 4 , 5 )
println( "Stack_1: " + s 1 )
println( "Stack_2: " + s 2 )
val result = s 1 .diff(s 2 )
print( "(Stack_1 - Stack_2): " + result)
}
}
|
Output:
Stack_1: Stack(1, 2, 3, 4, 5)
Stack_2: Stack(3, 4, 5)
(Stack_1 - Stack_2): Stack(1, 2)
Example #2:
import scala.collection.mutable. _
object GfG
{
def main(args : Array[String])
{
val s 1 = Stack( 1 , 2 , 3 , 4 , 5 )
val s 2 = Stack( 3 , 4 , 5 , 6 , 7 , 8 )
println( "Stack_1: " + s 1 )
println( "Stack_2: " + s 2 )
val result = s 2 .diff(s 1 )
print( "(Stack_2 - Stack_1): " + result)
}
}
|
Output:
Stack_1: Stack(1, 2, 3, 4, 5)
Stack_2: Stack(3, 4, 5, 6, 7, 8)
(Stack_2 - Stack_1): Stack(6, 7, 8)