-> JMV
// env->

/**
 * 0:           刷新Java数组,并 释放C++层数组
 * JNI_COMMIT:  只提交 只刷新Java数组,不释放C++层数组
 * JNI_ABORT:   只释放C++层数组
 */
env->ReleaseIntArrayElements(ints, jintArray, 0);

// ③:jobjectArray 代表是Java的引用类型数组,不一样
jsize strssize = env->GetArrayLength(strs);
for (int i = 0; i < strssize; ++i) {

    jstring jobj = static_cast<jstring>(env->GetObjectArrayElement(strs, i));

    // 模糊:isCopy内部启动的机制
    // const char* GetStringUTFChars(jstring string, jboolean* isCopy)
    const char *jobjCharp = env->GetStringUTFChars(jobj, NULL);

    LOGI("参数四 引用类型String 具体的:%s\n", jobjCharp);

    // 释放jstring
    env->ReleaseStringUTFChars(jobj, jobjCharp);
}

}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24

运行结果:

```latex
I/JNISTUDY: 参数一 countInt:99
I/JNISTUDY: 参数二 textInfo:你好
参数三 int[]:101
参数三 int[]:102
参数三 int[]:103
参数三 int[]:104
参数三 int[]:105
参数三 int[]:106
参数四 引用类型String 具体的:李小龙
参数四 引用类型String 具体的:李连杰
参数四 引用类型String 具体的:李元霸
D/MainActivity: Java test01: anInt:101
Java test01: anInt:102
Java test01: anInt:103
Java test01: anInt:104
Java test01: anInt:105
Java test01: anInt:106
Java test01: anSring:李小龙
Java test01: anSring:李连杰
Java test01: anSring:李元霸