Как выполнить преобразование типов в Clojure?

Как преобразовать Символ в String, Integer в Float и другие аналогичные преобразования типа в Clojure?

Ответы

Ответ 1

Вы сообщаете компилятору, какой тип вы хотите что-то добавить, добавив к нему метаданные.
Это может сделать некоторые операции быстрее и помочь устранить отражение. Символом ^ является синтаксический сахар, чтобы добавить это в метаданные для следующего.

(defn my-function  [^String my-string] ....

Символ в строку:

(str 'my-symbol)

Для чисел используйте имя типа как имя функции:

(int 4922354)
(double 42)
(byte 254)
(char 20)
etc...

Для получения дополнительной информации: http://clojure.org/java_interop#toc35