【问题标题】:How do I pass a Java function a String[] argument?如何向 Java 函数传递 String[] 参数?
【发布时间】:2016-05-14 19:43:07
【问题描述】:

我有一个 Java 函数,我想从 Clojure 调用它。具体原型如下:

public MyClass create(String aaa, File bbb, String[] args)

因此,我需要从 Clojure 函数传递 String[] 作为参数。通过以下任何一项:

  • (def args [])
  • (默认参数[""])
  • (def args ^String [])

全部产生异常:No matching method found: createScript for class BlaBla..

我也见过this Java interop documentation,但我可能遗漏了一些东西。如何从 Clojure 调用此方法?

【问题讨论】:

    标签: java clojure clojure-java-interop java-interop


    【解决方案1】:
    (.create (MyClass.) "aaa" (File. "my file") (into-array ["foo" "bar" "baz"]))
    

    应该做的伎俩。

    更多详情请见https://clojuredocs.org/clojure.core/into-array。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-20
      • 1970-01-01
      • 1970-01-01
      • 2019-08-05
      • 2018-06-08
      相关资源
      最近更新 更多