🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
前面一篇通过简单的例子介绍了android中JNI的使用。这一篇从基础上了解一些Java参数类型与本地参数类型区别。 1)java中的返回值void和JNI中的void是完全对应的哦!(仅仅一个而已)。 2)java中的基本数据类型(byte ,short ,int,long,float,double ,boolean,char-8种)在JNI中对应的数据类型只要在前面加上j就对应了(jbyte ,jshort ,jint,jlong,jfloat,jdouble ,jboolean,jchar)。 3)java中的对象,包括类库中定义的类、接口以及自定义的类接口,都对应于JNI中的jobject。 4)java中基本数据类型的数组对应与JNI中的jarray类型。(type就是上面说的8种基本数据类型) 5)java中对象的数组对应于JNI中的jobjectArray类型。(在java中一切对象、接口以及数组都是对象) 下图是JNI规范中java数据类型和JNI数据类型的映射图。 第一幅为基本数据类型的映射图: ![](https://box.kancloud.cn/2016-01-14_56971f3f4bfc6.gif) 第二幅为引用数据类型的映射图: ![](https://box.kancloud.cn/2016-01-14_56971f3f5ebc3.gif)