JAVA JNI
http://blog.csdn.net/hbcui1984/archive/2009/12/10/4980805.aspx
Ò»¡¢¸ÅÊö
JNI(java native interface)£¬JAVA±¾µØ½Ó¿Úµ÷Óã¬Ä¿µÄÊÇΪÁËJAVA¿ÉÒÔµ÷Óñ¾µØ³ÌÐò£¬Ö÷ÒªÓŵãÓУº
Ìá¸ßЧÂÊ£¬½â¾öÐÔÄÜÎÊÌâ
·ÀÖ¹·´±àÒ룬Ìá¸ßºËÐÄ´úÂ밲ȫÐÔ
ÔöÇ¿±¾»ú½Ó¿Úµ÷ÓÃ
ǶÈëʽ¿ª·¢Ó¦ÓÃ
ÈçÏÂͨ¹ýÒ»¸ö×î¼òµ¥µÄСdemo£¬ÑÝʾÈçºÎ½øÐÐjni¿ª·¢¡£
¶þ¡¢demoÑÝʾ
1. н¨JAVAÎļþ
н¨Ò»¸öjavaÀ࣬ÈçÏ£º
view plaincopy to clipboardprint?
package chb.test.jni;
public class HelloJni {
public native void sayHello();
static {
System.loadLibrary("hellojni");
}
public static void main(String[] args) {
new HelloJni().sayHello();
}
}
package chb.test.jni;
public class HelloJni {
public native void sayHello();
static {
System.loadLibrary("hellojni");
}
public static void main(String[] args) {
new HelloJni().sayHello();
}
}
HelloJni.javaÔÚÓ²ÅÌÉϵÄλÖãºD:\workspace\MyWork\src\chb\test\jni\HelloJni.java
2. Éú³ÉclassÎļþ
1) ÀûÓÃjavacÃüÁî½øÐбàÒ룬½øÈëD:\workspace\MyWork\src\chb\test\jniĿ¼£¬ÀûÓÃ
view plaincopy to clipboardprint?
javac HelloJni.java
javac HelloJni.java
2) ÀûÓÃIDE£¬ÀýÈçÎÒÀûÓÃeclipse¿ª·¢£¬×Ô¶¯±àÒ룬±àÒëºóµÄÎļþλÓÚ£ºD
Ïà¹ØÎĵµ£º
1¡¢ÖÐÎÄÎÊÌâµÄÀ´Ô´
ÓÉÓÚJava
Óï
ÑÔÄÚ²¿²ÉÓÃUNICODE±àÂ룬ËùÒÔÔÚJAVA
³ÌÐòÔËÐÐʱ£¬¾Í´æÔÚ×ÅÒ»¸ö´ÓUNICODE±àÂëºÍ¶ÔÓ¦µÄ²Ù×÷ϵͳ¼°ä¯ÀÀÆ÷Ö§³ÖµÄ±àÂë¸ñʽ
ת
»»ÊäÈë¡¢Êä³öµÄÎÊÌ⣬Õâ¸öת»»¹ý³ÌÓÐ×ÅһϵÁеIJ½Ö裬Èç¹ûÆäÖÐÈκÎÒ»²½³ö´í£¬ÔòÏÔʾ³öÀ´µÄºº×־ͻá³öÊÇÂÒÂ룬Õâ¾ÍÊÇÎÒÃdz£¼ûµÄJAVA
ÖÐ
ÎÄÎÊÌâ¡£¼¸ºõËùÓÐµÄ ......
java»Øµ÷»úÖÆ
»Øµ÷¸ÅÄî:
Èí¼þÄ£¿éÖ®¼ä×ÜÊÇ´æÔÚ×ÅÒ»¶¨µÄ½Ó¿Ú£¬´Óµ÷Ó÷½Ê½ÉÏ£¬¿ÉÒÔ°ÑËûÃÇ·ÖΪÈýÀࣺͬ²½µ÷Óᢻص÷ºÍÒì²½µ÷Óá£Í¬²½µ÷ÓÃÊÇÒ»ÖÖ×èÈûʽµ÷Ó㬵÷Ó÷½ÒªµÈ´ý¶Ô·½Ö´ÐÐÍê±Ï²Å·µ»Ø£¬ËüÊÇÒ»ÖÖµ¥Ïòµ÷Ó㻻ص÷ÊÇÒ»ÖÖË«Ïòµ÷ÓÃģʽ£¬Ò²¾ÍÊÇ˵£¬±»µ÷Ó÷½ÔÚ½Ó¿Ú±»µ÷ÓÃʱҲ»áµ÷ÓöԷ½µÄ½Ó¿Ú£»Òì²½µ÷ÓÃÊÇÒ»ÖÖÀàËÆ ......
ÔÚJava concurrent°üÖÐÓÐÕâôһ¸ö½Ó¿Ú£ºConcurrentMap¡£
ConcurrentMap¼Ì³Ð×ÔMap£¬²¢Ìí¼ÓÁ˼¸¸öеÄÔ×Ó·½·¨£º putIfAbsent¡¢remove¡¢replace
Æä·½·¨ÕªÒªÈçÏ£º
V
putIfAbsent(K key, V value)
Èç¹ûÖ¸¶¨¼üÒѾ²»ÔÙÓëij¸öÖµÏà¹ØÁª£¬Ôò½ ......
Ò».ÔÚj2seÀïÎÒÃÇ¿ÉÒÔʹÓÃMath.random()·½·¨À´²úÉúÒ»¸öËæ»úÊý£¬Õâ¸ö²úÉúµÄËæ»úÊýÊÇ0-1Ö®¼äµÄÒ»¸ödouble£¬ÎÒÃÇ¿ÉÒÔ°ÑËû³ËÒÔÒ»¶¨µÄÊý£¬±ÈÈç˵³ËÒÔ100£¬Ëû¾ÍÊǸö100ÒÔÄÚµÄËæ»ú£¬Õâ¸öÔÚj2meÖÐûÓС£
¶þ.ÔÚjava.utilÕâ¸ö°üÀïÃæÌṩÁËÒ»¸öRandomµÄÀ࣬ÎÒÃÇ¿ÉÒÔн¨Ò»¸öRandomµÄ¶ÔÏóÀ´²úÉúËæ»úÊý£¬Ëû¿ÉÒÔ²úÉúËæ»úÕûÊý¡¢Ëæ»úfloat¡¢ ......
1¡¢½«String/StringBuffer±äÁ¿µÄÖµÖÃΪnull£¬ÔòÆäËùÕ¼ÄÚ´æ»áºÜ¿ì±»»ØÊÕ¡£
2¡¢ÔËÐйý³ÌÖнöÒÀÀµÓÚÊäÈë²ÎÊýµÄ·½·¨£¬ÈçÊýѧ·½·¨£»¾²Ì¬³ÉÔ±±äÁ¿³£Îª¶¨Òå³£Êý£¬ÓÃÏÞ¶¨´Êpublic static final£»¾²Ì¬³ÉÔ±±äÁ¿¿É½ÚÊ¡ÄÚ´æ¡£
3¡¢½Ó¿Ú£ºÈôÓÐÐèÍê³É³éÏóµÄ¶¯×÷»ò¾ßÓиÅÄîÐÔµÄÊôÐÔ£¬ÔòÔÚ½Ó¿ÚÖж¨Òå¸Ã¶¯×÷»ò¸ÅÄÔÚʵÏָýӿڵÄÀàÖоßÌå» ......