พอดีวันนี้ได้ลองเล่น java interop ที่ใช้ class ของ Java ซึ่งตัวอย่างจะเกี่ยวกับวันที่และเวลา (Date & Time) เท่าที่อ่านเจอในเน็ตจะใช้แบบนี้
user=> (def date (java.uitl.Date.))
user=> date
#inst "2021-06-22T15:09:15.448+07:00"
user=> (.getDate date)
22
ซึ่งก็ปกติดี แต่คราวนี้ที่อยากได้คือ Day of year เช่นถ้าตาม date
ข้างบน output ที่จะได้คือ 173
แปลว่าเป็นวันที่ 173
ของปีนี้
ถ้าใน Java จะใช้ java.util.Calendar
Calendar calendar = Calendar.getInstance();
int dayOfYear = calendar.get(Calendar.DAY_OF_YEAR);
เราจะแปลงโค้ดให้เป็น Clojure ได้แบบนี้
user=> (def date (java.util.Calendar/getInstance))
user=> date
#inst "2021-06-22T15:27:12.274+07:00"
user=> (.get date (. java.util.Calendar DAY_OF_YEAR))
173
=> (.get date (java.util.Calendar/DAY_OF_YEAR)) ; อันนี้น่าจะอ่านง่ายกว่า
173
New comment
Reply {{ formatEllipsisAuthor(replyComment.author) }}
Write the first comment
{{ comments.length }} comments