ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Scala Pattern Matching(패턴매칭)
    Scala 2014. 6. 13. 09:00
    반응형


    입력받은 매개변수가 어떤 케이스에 해당하는지에 따라서 그 다음 연산을 처리함.

    다른 언어의 switch와 비슷한 기능을 하지만, 단순히 int형만을 매치하는 것이 아니라 다양한 타입에 대해서 매치가 가능하기 때문에 더 강력하고 유용함.


    object MatchTest1 {
      def matchTest(x: Int): String = x match {
        case 1 => "one"
        case 2 => "two"
        case _ => "many"
      }                                               //]]> matchTest: (x: Int)String
      println(matchTest(1))                           //]]> one
      println(matchTest(2))                           //]]> two
      println(matchTest(3))                           //]]> many
      
      
      def matchTest2(x: Any): Any = x match {
        case 1 => "one"
        case "two" => 2
        case y: Int => "scala.Int"
        case b: Boolean => true
      }                                               //]]> matchTest2: (x: Any)Any
      println(matchTest2(1))                          //]]> one
      println(matchTest2("two"))                      //]]> 2
      println(matchTest2(3))                          //]]> scala.Int
      println(matchTest2(false))                      //]]> true
    }
    
    반응형

    'Scala' 카테고리의 다른 글

    Scala Currying(커링)  (0) 2014.06.11
    Scala Traits(트레잇)  (0) 2014.06.06
    Scala Class, Object(클래스, 오브젝트)  (0) 2014.06.02
    Scala 함수  (0) 2014.05.30
    Scala 루프구문  (0) 2014.05.28

    댓글

Designed by Tistory.