簡體   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