fork download
  1. object Main extends App {
  2. val values: Seq[Any] = Seq(1, "abc", new Object)
  3. for (a <- values; b <- values) {
  4. multiMethod(a, b)
  5. }
  6.  
  7. def multiMethod(arg1: Any, arg2: Any): Any = {
  8. (arg1, arg2) match {
  9. case (x: Int, y: String) => println("Got Int and String!")
  10. case (x: String, y: Int) => println("Got String and Int!")
  11. case (x: Int, y: Any) => println("Got Int and Any!")
  12. case (x: Any, y: Int) => println("Got Any and Int!")
  13. case _ => println("Got something else!")
  14. }
  15. }
  16. }
  17.  
Success #stdin #stdout 0.42s 2181632KB
stdin
Standard input is empty
stdout
Got Int and Any!
Got Int and String!
Got Int and Any!
Got String and Int!
Got something else!
Got something else!
Got Any and Int!
Got something else!
Got something else!