当将从javascript客户端调用javaapi时,在javaapi中使用2d数组

using a 2d array in a java api when the api will be invoked from a javascript client

本文关键字:javaapi 数组 2d javascript 客户端 调用      更新时间:2024-01-02

我正在使用Apache CXF在Java中创建一个简单的API-在API的一个函数中,其中一个输入必须是二维数组。

此API将从javascript客户端调用。

我对以下内容感到困惑——

(a) 我不想在Java函数中限制二维数组参数的大小。这个参数的类型应该是什么?我应该使用arraylist吗?还是别的什么?你能为2d数组的java部分提供一个示例声明吗?

(b) 当javascript客户端调用API时,它将在2d数组中发送数据。现在,有时数据将只是一个一维数组,而其他时候它将是一个二维数组。。。此外,在javascript客户端对该函数的各种调用中,每个维度的大小也会有所不同。现在,在Java API接收到函数调用后,如何处理包含在2d javascript数组中的数据?

(c) 在从Javascript客户端发送2d数据时,是否有任何限制/规则需要我牢记?

这两种语言都没有二维数组类型。两者都使用数组的数组来处理这类数据。至于Java中的类型参数,只需使用双方括号表示法MyType[][],它表示MyType对象的数组。

当你说有时数据将是一个一维数组时,你将如何在Java中处理它,或者只是说你将拥有一个一维阵列的数组?

用Javascript处理数据应该足够简单,只是一个嵌套的循环。但是,由于这两种语言都不会强制执行每行具有相同长度的列的约束,因此如果您需要矩形二维数组,则可能需要做一些额外的操作。

不,您的2d数据进入Javascript没有特别的限制,只不过您已经将其他Java数据转换为Javascript了。

  1. 使用列表列表,而不是数组数组
  2. 如果客户端发送两种不同格式的数据,则需要两种不同的方法,无法用相同的方法处理1D数组和2D数组
  3. 在java方面,使用Gson来序列化/反序列化json对象