简体   繁体   中英

How can I call a java static method in clojure?

I wish to call class on the String class. How can I access this static method?

You can call a static method using (ClassName/methodName arguments) .

However class is not a static method, it's a java keyword and you don't need it in clojure. To get the Class object associated with the String class, just use String .

一个例子值 100 个词:

(. String (valueOf 1))

Class doesn't have a "class" method, nor a "class" member. The symbol String is mapped to the class java.lang.String, if what you want to get is the equivalent of Java's String.class . If you want to call a static method of the String class, the syntax is (String/methodName arg1 arg2) .

Your question has been answered, I think, but if you really do want to get the class of an unknown object, you can use the class function:

> (class "Foo")
java.lang.String

As in java, to specify classes outside of java.lang as literals, you need to either import them, or specify the full package + class name using dot (.) separators.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM