如何将Long[]
数组或List<Long>
传递给JSNI函数,如下所示:
public native void updateData(Long[] data)/*-{
waveform.update({
data: [0.5, 1.0, 0.5, 1.0]
});
}-*/;
答案 0 :(得分:3)
由于种种原因,你不能。
JsArray
(或JsArrayNumber
或等)。 java.util.List
。java.lang.Long
将是JSNI long
也无效,因为您无法将long
传递给JSNI。这是因为并非所有long都可以表示为JS数字。相当于JS Number
是double
。您必须将Long[]
复制到JsArrayNumber
,并在将long
值向下转换为double
值时应对可能出现的溢出。