我能够使用get()
方法从Option[Double]
提取jobject
:
jmethodID getMethodID = env->GetMethodID(optionClass, "get", "()Ljava/lang/Object;");
jobject volObj = env->CallObjectMethod(pointObj, getMethodID);
但是,我看不出一种从选项中提取实际双重值的方法。如何做?
您可以调用double.doublevalue()将对象卸载为double。
jclass doubleClass = (*env)->FindClass(env, "java/lang/Double");
jmethodID doubleMethod =
(*env)->GetMethodID(env, doubleClass, "doubleValue", "()D");
jdouble d = (*env)->CallDoubleMethod(env, valObj, doubleMethod);