【发布时间】:2014-11-25 04:17:51
【问题描述】:
我是 clojure 的新手,谁能帮助我了解如何在 clojure 中获取当前日期,然后为其添加天数? 例如向当前日期添加 3 天?
【问题讨论】:
标签: clojure functional-programming
我是 clojure 的新手,谁能帮助我了解如何在 clojure 中获取当前日期,然后为其添加天数? 例如向当前日期添加 3 天?
【问题讨论】:
标签: clojure functional-programming
这确实不是 Clojure 特定的答案,但我会使用 Joda time。
(import 'org.joda.time.DateTime)
(let [now (DateTime/now)
later (.plusDays now 3)]
[now later])
;; [#<DateTime 2014-11-24T23:26:05.885-05:00> #<DateTime 2014-11-27T23:26:05.885-05:00>]
【讨论】:
clj-time 包装器使其特定于 Clojure。 :)
user> (import '[java.util Calendar])
;=> java.util.Calendar
user> (defn days-later [n]
(let [today (Calendar/getInstance)]
(doto today
(.add Calendar/DATE n)
.toString)))
#'user/days-later
user> (println "Tomorrow: " (days-later 1))
;=> Tomorrow: #inst "2014-11-26T15:36:31.901+09:00"
;=> nil
user> (println "7 Days from now: " (days-later 7))
;=> 7 Days from now: #inst "2014-12-02T15:36:44.785+09:00"
;=> nil
【讨论】: