基于用户输入的Clojure循环

时间:2014-10-05 00:44:18

标签: clojure

在Clojure中,我想创建一个不断询问用户选项的函数,根据选项执行一些代码,然后在用户选项为“q”时退出。

我很满意所有与序列一起使用的各种Clojure表单,我当然可以找到类似Java的解决方案,但我无法弄清楚如何以“clojuresque”方式执行此操作。

谢谢,

Jeffrey S

1 个答案:

答案 0 :(得分:4)

这样的事情应该可以胜任:

(defn main-loop []
  (case (read-line)
     "q" nil
     "a" (do (println "got a command!") (recur))
     "b" (do (println "got b command!") (recur))
     (do (println "got invalid command!") (recur))))
相关问题