gpt4 book ai didi

java - 将 Long 数组传递给 JSNI 函数

转载 作者:行者123 更新时间:2023-11-28 20:48:12 24 4
gpt4 key购买 nike

我如何通过Long[]数组或 List<Long>像这样的 JSNI 函数:

public native void updateData(Long[] data)/*-{
waveform.update({
data: [0.5, 1.0, 0.5, 1.0]
});
}-*/;

最佳答案

由于各种原因,您不能。

  • Java 数组(无论其类型)对于 JSNI 来说都是不透明的对象。您必须使用 JsArray (或 JsArrayNumber 等)。对于 java.util.List 也是如此。
  • java.lang.Long 对于 JSNI 来说是一个不透明的对象
  • 即使使用 long 也不起作用,因为您无法将 long 传递给 JSNI。这是因为并非所有长整型都可以表示为 JS 数字。相当于 JS Number 的是 double

您必须将 Long[] 复制到 JsArrayNumber 中,并在将 long 值向下转换为时应对可能的溢出double 值。

关于java - 将 Long 数组传递给 JSNI 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13066558/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com