Trong đoạn mã sau, Clojure (1.2) được in thông điệp sai lầm:Clojure không bắt NumberFormatException
(try
(let [value "1,a"]
(map #(Integer/parseInt %) (.split value ",")))
(catch NumberFormatException _ (println "illegal argument")))
này nên in "lập luận bất hợp pháp", nhưng thay vào đó nó in một (1#<NumberFormatException java.lang.NumberFormatException: For input string: "a">
.
Tôi đang làm gì sai?
Đây có phải là do chuỗi lười được trả về bởi map
không? Làm thế nào nó nên được viết?
Bạn sẽ thấy điều này hữu ích: http://groups.google.com/group/clojure/msg/f4ea5a9c38f4d991 – MayDaniel