繁体   English   中英

如何调用从Java获取二维数组字符串的Clojure函数?

[英]How do I call a Clojure function that takes a two-dimensional array of Strings from Java?

基本上问题都说明了一切。

当我在gen-class中声明一个函数签名时,我为2D字符串数组添加了什么类型?

[myFunc [XXXX] ReturnType]

我为XXXX准备了什么?

更新:按照@Mark Topolnik的建议,我正在尝试

#^{:static true} [myFunc [ ^"[[Ljava.lang.String;" ] clojure.lang.IFn] 

在我的声明中,我回来了

java.lang.RuntimeException: Unmatched delimiter: ]

我尝试编译它时的运行时异常。

更新2:通过从上面的行中删除^来修复。 (这是在gen-class中声明函数签名的上下文中,因此^可能是不必要的。)

多维数组类型在Clojure中没有直接支持,但您总是可以回退到使用具有二进制类型名称的String。 在您的情况下,这将如下所示:

[myFunc ["[[Ljava.lang.String;"] ReturnType]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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