Clojure-case-statement

提供:Dev Guides
移動先:案内検索

Clojure-ケースステートメント

Clojureは、Javaプログラミング言語で使用可能な 'switch' ステートメントに似た 'case' ステートメントを提供します。 以下は、caseステートメントの一般的な形式です。

構文

case expression
value1 statement #1
value2 statement #2
valueN statement #N
statement #Default

この声明の一般的な作業は次のとおりです-

  • 評価される式は「case」ステートメントに配置されます。 通常、これは値に評価され、後続のステートメントで使用されます。
  • 各値は、「case」式によって渡される値に対して評価されます。 どの値が真であるかに応じて、後続のステートメントが実行されます。
  • また、以前の値がいずれもtrueと評価されない場合に実行されるデフォルトのステートメントもあります。

次の図は、「if」ステートメントのフローを示しています。

ケースステートメント

以下は、Clojureの「ケース」ステートメントの例です。

(ns clojure.examples.hello
   (:gen-class))

;; This program displays Hello World
(defn Example []
   (def x 5)
   (case x 5 (println "x is 5")
      10 (println "x is 10")
      (println "x is neither 5 nor 10")))
(Example)

上記の例では、最初に変数「x」を値5に初期化します。 次に、変数「x」の値を評価する「case」ステートメントがあります。 変数の値に基づいて、ステートメントの関連するケースセットを実行します。 前のステートメントが実行されない場合、最後のステートメントがデフォルトのステートメントです。

出力

上記のコードは次の出力を生成します。

x is 5