JNI C创建Java字符串数组

创建Java字符串数组


注:jni中没有与String[]对应的数据类型,所以需要创建对象数组,循环添加jstring对象

#include 
      #include 
      #include 
      #define ARRAY_LENGTH 5   

     JNIEXPORT jobjectArray JNICALL Java_Sample3_stringMethod
(JNIEnv *env, jobject obj, jstring string)
       {   
         jclass objClass = (*env)->FindClass(env, "java/lang/String");
        jobjectArray texts= (*env)->NewObjectArray(env,
(jsize)ARRAY_LENGTH, objClass, 0);
         jstring jstr;
          char* sa[] = { "Hello,", "world!", "JNI", "很", "好玩" };
         int i=0;
         for(;iNewStringUTF( env, sa[i] );
            (*env)->SetObjectArrayElement(env, texts, i, jstr);//必须放入jstring
         }
        return texts;
   }

你可能感兴趣的:(JNI C创建Java字符串数组)