JNI中的复杂数组初始化

时间:2017-02-21 12:17:19

标签: java arrays java-native-interface

这是我想要转换成JNI的java代码 我该怎么做这类东西?

代码:

public class ArrayTest
{
  public static void main(String[] args)
  {
    int[][] a = new int[11][3];
    int[] b;

    for(int i = -5 ; i <=5; i++){
      b = a[i + 5];
      System.out.println(b.length);
    }
  }
}

1 个答案:

答案 0 :(得分:0)

我不明白,代码中包含哪个逻辑,但我只是向您展示如何创建多向数组:

jclass intArrayClass = env->FindClass("[I");
// create outher array
jobjectArray a = env->NewObjectArray(11, intArrayClass, NULL);
// initialize inner array
for(int i = 0; i < 11; i++)
    env->SetObjectArrayElement(imgArray, i, env->NewIntArray(3));

jintArray b;
for(int i = -5 ; i <=5; i++){
    b = (jintArray)env->GetObjectArrayElement(a, i + 5);
    // print lenght of b array
}