獲得類基本類型的這個問題是有關這個問題和它的答案是:如何從Java JNI
Does int.class equal Integer.class or Integer.TYPE in Java?
由於int.class不等於Integer.class我怎樣才能INT。通過JNI在本地級別的Class或其他原始類型?我需要指向int.class而不是Integer.class的jclass對象。
獲得類基本類型的這個問題是有關這個問題和它的答案是:如何從Java JNI
Does int.class equal Integer.class or Integer.TYPE in Java?
由於int.class不等於Integer.class我怎樣才能INT。通過JNI在本地級別的Class或其他原始類型?我需要指向int.class而不是Integer.class的jclass對象。
這個測試
System.out.println(Integer.TYPE == int.class);
打印true
。也就是說,Integer.TYPE是你想要的,你可以從本地代碼讀取Integer.TYPE字段。或撥打電話Class.getPrimitiveClass("int")
從本機代碼
在JNI中,原始值作爲實際機器值傳遞。一個int作爲一個jint被傳遞給一個32位有符號整數。
http://docs.oracle.com/javase/1.5.0/docs/guide/jni/spec/types.html#wp9502
我已經知道這一點。請重新閱讀我的問題。這不是我問的問題!我需要int.class的jclass。在java級別,我會做:Class objectClass = int.class。 – 2013-04-08 11:06:25
看起來很有前途。我會試着讓你知道 – 2013-04-08 11:12:54
事實上,讀取本地級別的Integer.TYPE的靜態字段會提供請求的行爲。 – 2013-04-09 02:52:19