프로그래밍 검색 블로그

clojure 함수형 패턴매칭 2 (case) 본문

clojure기초

clojure 함수형 패턴매칭 2 (case)

코딩조무사 2017. 10. 21. 18:19


1
2
3
4
5
6
7
8
9
10
11
12
(defn foo [x]
      (println
        (case x
          "A" "string a"
          1 "number 1"
          "other") ) )
 
 
(foo 20)
(foo "A")
(foo 33.0)
(foo 1)
cs

출력: 

other

string a

other

number 1


이쪽은 C++의 switch - case와 비슷하지만

타입과 관계없이 모두 매칭 시킬수 있다는 장점이 있다 


또한 String부터 비교를 시작했어도 에러가 나지 않는다 

java.lang.Object의 equals를 사용하는듯 하다


'clojure기초' 카테고리의 다른 글

clojure 함수형 프로그래밍 1 (map)  (0) 2017.10.22
clojure 함수형 패턴매칭 3 (condp)  (0) 2017.10.21
clojure 함수형 패턴매칭 1 (cond)  (0) 2017.10.21
clojure factorial 1  (0) 2017.10.21
clojure 기초 반복 loop  (0) 2017.10.21
Comments