Java Arrays.sort Ô´Âë½âÎö primitive
Java ArraysÖÐÌṩÁ˶ÔËùÓÐÀàÐ͵ÄÅÅÐò¡£ÆäÖÐÖ÷Òª·ÖΪprimitiveºÍObjectÁ½´óÀ࣬·Ö±ðʹÓÃÁË¿ìËÙÅÅÐòÓëºÏ²¢ÅÅÐò¡£±¾ÕÂÒÔint[] µÄÅÅÐò£¬½²½âJava¶ÔprimitiveÅÅÐò¡£
Ê×ÏÈ´ó¼ÒÒªÁ˽âʲôÊÇ¿ìËÙÅÅÐò£¬ËüÓÐʲôÓŵ㣬ÕâЩÎҾͲ»ÀÛÊöÁË£¬¸ø³öµØÖ·¡£http://zh.wikipedia.org/zh/%E5%BF%AB%E9%80%9F%E6%8E%92%E5%BA%8F
ÔÚÁ˽âÁË»ù±¾ÔÀíÖ®ºó£¬ÉÏͼ¿ÉÒÔ¶¯Ì¬µÄչʾ¿ìËÙÅÅÐòµÄ»ù±¾Ë¼Â·¡£ºÜ¾µä~
½ÓÏÂÀ´£¬ÎÒÃÇչʾԴÂ룬²¢×Ðϸ½²½â£¡
public static void sort(int[] a) {
sort1(a, 0, a.length);
}
Õâ¸ö·½·¨ÊǶÔÍⱩ¶µÄµ÷Óýӿڡ£ sort1 ÊÇÅÅÐò·½·¨µÄÖ÷Ì壬´«Èë²ÎÊý·Ö±ðΪ£º´ýÅÅÐòÊý×飬ÅÅÐòÆðʼλÖ㬴ýÅÅÐòÔªËØ³¤¶È¡£
sort1ÖÐʹÓõ½ÁíÍâ3¸ö·½·¨£¬Ê×ÏȽéÉÜ¡£
1. swap£º¼òµ¥µÄʹÓÃÖмä±äÁ¿À´½»»»Êý×éÄÚÔªËØ¡£
private static void swap(int x[], int a, int b) {
int t = x[a];
x[a] = x[b];
x[b] = t;
}
2.med3£º¼ÆËãÖÐÖµ¡£
private static int med3(int x[], int a, int b, int c) {
return (x[a] < x[b] ?
(x[b] < x[c] ? b : x[a] < x[c] ? c : a) :
(x[b] > x[c] ? b : x[a] > x[c] ? c : a));
}
3.vecswap£ºÅúÁ¿Òƶ¯ÔªËØ
private static void vecswap(int x[], int a, int b, int n) {
for (int i=0; i<n; i++, a++, b++)
swap(x, a, b);
}
Íòʾ㱸£¬¿ªÊ¼Ïê½â¡£
private static void sort1(int x[], int off, int len) {
// Insertion sort on smallest arrays
if (len < 7) {
for (int i=off; i<len+off; i++)
for (int j=i; j>off && x[j-1]>x[j]; j--)
swap(x, j, j-1);
return;
}
¿ªÍ·²¿·Ö±ãÅжϣ¬Èç¹ûÊý×鳤¶ÈСÓÚ7£¬±ãʹÓòåÈë·½·¨ÅÅÐò¡£
// Choose a partition element, v
int m = off + (len >> 1); // Small arrays, middle element
if (len > 7) {
int l = off;
int n = off + len - 1;
if (len > 40) { // Big arrays, pseudomedian of 9
int s = len/8;
l = med3(x, l, l+s, l+2*s);
m = med3(x, m-s, m, m+s);
n = med3(x, n-2*s, n-s, n);
}
m = med3(x, l, m, n); // Mid-size, med of 3
}
int v = x[m];
Èç¹û³¤¶È½Ï³¤£¬±ãÐ
Ïà¹ØÎĵµ£º
JNI¹¤×÷ÔÀí
ÔÚJNIÖУ¬±¾µØº¯ÊýÊÇͨ¹ýÒ»¸ö¶ÀÁ¢µÄ.c»ò.cppÎļþÀ´ÊµÏÖµÄ(C++ΪJNIÌṩµÄ½çÃæ»á¸ü¼ò½àһЩ)¡£µ±JVMµ÷Óøú¯Êýʱ£¬Ëü´«µÝÁËÒ»¸öJNIEnvÖ¸Õë¡¢Ò»¸öjobjectÖ¸ÕëºÍͨ¹ýJava·½·¨¶¨ÒåµÄJava²ÎÊý£¬JNIº¯ÊýµÄÐÎʽÈçÏ£º
JNIEXPORT void JNICALL Java_ClassName_MethodName
(JNIEnv *env, jobjectobj)
{
......
1.staticÉùÃ÷±äÁ¿µÄÓ÷¨ÔÚ»ù´¡ÖªÊ¶ÀïÃæ£»
JavaÀïÃæstaticÓÃÀ´ÉùÃ÷º¯ÊýµÄ×÷Óãº
A.¿ÉÒÔ²»Óô´½¨¶ÔÏó£¨ÊµÀý£©£¬¶øÖ±½Óµ÷Ó×—Àà.·½·¨
B.ÓÃÓÚmainº¯ÊýµÄ·½·¨
2.new——·ÖÅä¿Õ¼äÎÊÌâ
ÓжàÉÙne ......
Java³ÌÐòµÄÔ´´úÂëºÜÈÝÒ×±»±ðÈË͵¿´¡£Ö»ÒªÓÐÒ»¸ö·´±àÒëÆ÷£¬ÈκÎÈ˶¼¿ÉÒÔ·ÖÎö±ðÈ˵ĴúÂë¡£±¾ÎÄÌÖÂÛÈçºÎÔÚ²»ÐÞ¸ÄÔÓгÌÐòµÄÇé¿öÏ£¬Í¨¹ý¼ÓÃܼ¼Êõ±£»¤Ô´´úÂë¡£
ΪʲôҪ¼ÓÃÜ£¿
¶ÔÓÚ´«Í³µÄC»òC++Ö®ÀàµÄÓïÑÔÀ´Ëµ£¬ÒªÔÚWebÉϱ£»¤Ô´´úÂëÊǺÜÈÝÒ׵ģ¬Ö»Òª²»·¢²¼Ëü¾Í¿ÉÒÔ¡£Òź¶µÄÊÇ£¬Java³ÌÐòµÄÔ´´úÂëºÜÈÝÒ×±»±ðÈË͵¿´¡£Ö»ÒªÓÐÒ»¸ ......
Ëõ·ÅͼÏñµÄ»ù±¾ÔÀíÊÇ´´½¨Ò»¸öÄ¿±ê´óСµÄ»²¼£¬È»ºó¶ÁȡԴͼÏñ£¬²¢½«¸ÃͼÏñ»æÖÆÕâ¸ö»²¼ÉÏ¡£ÎªÁËʹ³ÌÐòͨÓã¬Ô´Í¼ÏñºÍËõ·ÅºóµÄÄ¿±êͼÏñÓ¦Ó÷ֱðʹÓà InputStreamºÍOutputStreamÀ´±íʾ£¬´úÂëÈçÏ£º
public static void scaleImage(InputStream imgInputStrea ......
ÔÚstylesheet±êÇ©ÀïÉùÃ÷ÃüÃû¿Õ¼äºÍµ÷Ó÷½·¨£º
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:proc="${path}/packageName" exclude-result-prefixes="proc">
......
<xsl:value-of select="proc:className.methodName(param)"/>
${path}Ëæ±ãÔõÑùд¶¼¿ÉÒÔ£¬¼´Ê¹ÊǸ ......