How to swap two numbers without using a third variable (temp) in Scala

4 Answers

0 votes
// Tuple Assignment (Recommended)

object SwapExample {
  def main(args: Array[String]): Unit = {
    var a = 10
    var b = 20

    val (newA, newB) = (b, a)
    a = newA
    b = newB

    println(s"a = $a")
    println(s"b = $b")
  }
}


/*
run:

a = 20
b = 10

*/

 



answered 5 days ago by avibootz
0 votes
// Arithmetic Swap

object SwapExample {
  def main(args: Array[String]): Unit = {
    var a = 10
    var b = 20

    a = a + b
    b = a - b
    a = a - b

    println(s"a = $a")
    println(s"b = $b")
  }
}


/*
run:

a = 20
b = 10

*/

 



answered 5 days ago by avibootz
0 votes
// XOR Swap

object SwapExample {
  def main(args: Array[String]): Unit = {
    var a = 10
    var b = 20

    a = a ^ b
    b = a ^ b
    a = a ^ b

    println(s"a = $a")
    println(s"b = $b")
  }
}


/*
run:

a = 20
b = 10

*/

 



answered 5 days ago by avibootz
0 votes
// Using Pattern Matching Style Reassignment

object SwapExample {
  def main(args: Array[String]): Unit = {
    var a = 10
    var b = 20

    (a, b) = (b, a)

    println(s"a = $a")
    println(s"b = $b")
  }
}


/*
run:

a = 20
b = 10

*/

 



answered 5 days ago by avibootz

Related questions

...