当前位置: 首页 > 面试题库 >

如何使用Jobject数组?(Jni)

文华美
2023-03-14
问题内容

实际上,我调用了一个c ++函数:

JNIEXPORT void JNICALL Java_test_main_JniFunctions_testObject(JNIEnv * env,jobject obj,jobjectArray objArray){....}

我想做的就是找回原始对象的值。考虑此对象的Java代码声明:

jniFct.testObject(new Object[][]
        {   
            {"testTable"},
            {0, 0.0, "aaa"},
            {1, 1.1, "bbb"},
            {2, 2.2, "ccc"}
        });

例如,从第二列的第三行获取值。

任何人都有一个关于如何做到这一点的想法?


问题答案:
jobject row = env->GetObjectArrayElement(objArray, 2);
jobject value = env->GetObjectArrayElement((jobjectArray)row, 1);
const char* cvalue = env->GetStringUTFChars((jstring)value, 0);


 类似资料:
  • 问题内容: 我试图确定如何访问JObject中的数据,但我终生无法确定如何使用它。 我可以将其打印到执行Console.WriteLine(Object)的控制台中,然后看到数据,它看起来像: 但是我不知道如何迭代/枚举它,任何人都有想法吗?我现在很茫然。 问题答案: 如果您查看相关文档,将会发现它实现了。因此,您可以使用以下命令简单地对其进行迭代:

  • 问题内容: 我有第一个json: 第二个: 我想合并/合并两个数据数组,例如: (我现在不在乎)。 如何快速简便地做到这一点?这是我的尝试: 但是会引发异常: 问题答案: JArray dataOfJson1=json1.SelectToken(“data”);

  • 问题内容: 我有一个数组 如您所见,键0与1、3和4相同。键2与它们全部不同。 在它们上运行array_unique函数时,唯一剩下的是 有什么想法为什么array_unique无法按预期工作? 问题答案: 这是因为使用字符串比较来比较项目。从文档: 注意:当且仅当(string)$ elem1 ===(string)$ elem2,两个元素才被视为相等。换句话说:当字符串表示相同时。将使用第一个

  • 尝试转换如下内容时,我为转换后的对象获取了一个空值: 对此: 这是我使用的规范: 这是我使用的代码: 我能够使用与上述相同的规范和代码成功转换以下输入: 那么,我需要做什么来转换员工对象数组呢?

  • 我有一个功能正常的Rails 3应用程序,它使用has_many:通过关联,而不是,因为我将其重制为Rails 4应用程序,让我从Rails 4版本中的关联模型中保存id。 这两个版本的三个相关模型是相同的。 分类.rb Question.rb 类别.rb 在这两个应用程序中,类别id都像这样传递到创建操作中 在Rails 3应用程序中,当我创建一个新问题时,它会插入问题表,然后插入分类表 在ra

  • 问题内容: 我使用布尔数组作为HashMap的键。但是问题是,尽管元素相同,但当将另一个数组作为键传递时,HashMap无法获取键。(因为它们是不同的对象)。 如何使其与数组作为键一起使用?这是代码: 这两个数组和都包含相同的元素,但是HashMap不会为返回任何内容。 我该如何运作? 问题答案: 您无法以这种方式这样做。都和将有不同的值,因为该方法是从继承,它使用参考来计算哈希码(默认实现)。因