Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

Java "ÓÐÀíÓÉ" ±È C++ ¿ì

Java "ÓÐÀíÓÉ" ±È C++ ¿ì
 
×î½üÉÏCSDN±È½Ï¶à£¬ÓÖ¿´µ½ËµJava±ÈC++¸ü¿ìµÄÌû×Ó¡£
JavaÔÚijЩÇé¿öϱÈC++¿ìÎÒÈÏΪÊǺÜÓеÀÀíµÄ¡£ÀýÈç¿ÉÒÔ¸ù¾ÝÌØ¶¨µÄCPU½øÐÐÓÅ»¯µÈµÈ¡£
ÓÐλ½Ð wingfiring(±ð¶ºÁË)(·ÇµäÐÍͺ×Ó) µÄÀÏÐÖ·¢ÁËÒ»¸öÌû×Ó£¬Ô­ÎÄÈçÏ£º
ºÃ£¬ÎÒûÄÇô¶àʱ¼ä³³C++ºÃ»¹ÊÇJavaºÃ£¬ËùÒÔ£¬ÎÒ¾ÍÏÈÕ°ÑöÒ»ÏÂÂ¥Ö÷¸ø³öµÄÁ´½Ó°É£¬
µÚÒ»¸ö£º
http://kano.net/javabench/
ÀïÃæÓÐÁ½¶Î´úÂë
http://kano.net/javabench/src/cpp/
http://kano.net/javabench/src/java/
È»ºó¸ø³öÁË×Ô¼ºµÄÀíÓɲµ³âÕâ¸ö¹Ûµã¡£¿ÉϧÂíÉϾÍÑÍûÔÚÎÞÐÝÖ¹µÄÀ¬»øÌù×ÓºóÃæ¡£
ÎÒÈ»ºó¾ÍÄÃÉÏÃæµÄÕâ¸öÁ´½ÓÀ´Ëµ£¬·ÖÎöΪʲôJava±ÈC++¿ì¡£
´ó¸ÅµÄÔ´´úÂëÌù³öÀ´£º
Java°æ±¾£º
try {
byte[] buff = new byte[4096];
boolean inword = false;
int length;
while ((length = System.in.read(buff)) != -1) #1
{
nc += length;
for(int i = 0; i < length; i++) { #2
char c = (char)buff[i];
if (c == '\n')
++nl;
if (Character.isWhitespace(c))
inword = false;
else if (inword == false) {
++nw;
inword = true;
}
}
}
×¢Òâ#1ÕâÒ»ÐУ¬read½«4K×Ö½Ú¶ÁÈëbuffÖУ¬È»ºóÔÚ#2½øÐÐÄÚ²ãÑ­»·£¬
C++°æ±¾£»
char buff[4096];
cin.rdbuf()->pubsetbuf(buff, 4096); #0// enable buffering
state = OUT;
nl = nw = nc = 0;
int intc;
streambuf* sbuf = cin.rdbuf();
while ((intc = sbuf->sbumpc()) != EOF) { #1
c = (char)intc;
++nc;
if (c == '\n')
++nl;
if (c == ' ' || c == '\n' || c == '\t')
state = OUT;
else if (state == OUT) {
state = IN;
++nw;
}
}
cout << nl << " " << nw << " " << nc << endl;
×¢ÒâC++°æ±¾Ö»Óе¥²ãÑ­»·£¬ËäÈ»ÔÚ#0Ã²ËÆ¹«ÕýµÄ¿ª±ÙÁËͬÑù´óСµÄ4K buffer£¬µ«ÊÇÿһ¸ö×ֽڵĻñµÃ¶¼ÊÇͨ¹ýsbumpc()º¯Êý£¬µ÷ÓÃÒ»´Î¶Áȡһ¸ö×Ö½Ú£¬sbumpc´ó¸ÅÆäÖеÄÂß¼­ÊÇÊ²Ã´ÄØ£¿Ê×ÏÈÒªÅжÏÊÇ·ñ¶Áµ½ÄÚ²¿»º³åÇøÎ²ÁË£¬Èç¹ûûÓУ¬ÄÇôµÝÔöÒ»¸öÖ¸Õ룬Èç¹û¶Áµ½Î²ÁË£¬ÄÇô½øÐÐϵͳµ÷ÓøüÐÂbuffer¡£¹âÆäÖÐifÓïÑԵĿªÏú¾Í¾ªÈË¡£
¶øJava°æ±¾¾Íͨ¹ýÒ»¸öreadº¯Êýµ÷Óã¬Ö±½Ó½«²»¶àÓÚ4KµÄÊý¾Ý´ÓÁ÷ÖжÁÈ¡µ½±¾µØbufferÖУ¬È»ºó½øÐÐÄÚ²ãÑ­»·¡£
ÕâÑù¶ÔÓÚC++µÄ°æ±¾£¬ËäÈ»¶ÔOSµ×²ãµÄϵͳµ÷ÓúÍJavaÒ»Ñù¶à£¬µ«ÊǺ¯Êýµ÷ÓõĴÎÊý¿ªÏú¼¸ºõÊÇJavaµÄ4000±¶¡£
¼´Ò»¸ö8KµÄÎļþ£¬Javaµ÷ÓÃÁ½´Îread£¬È»ºó½øÈëÄÚ²ãÑ­»


Ïà¹ØÎĵµ£º

Effective Java ѧϰ±Ê¼Ç £¨10£©

java.lang.Object ÌṩÁËÒ»¸ötoString()µÄ·½·¨£¬µ«Êµ¼ÊÉÏÕâ¸ö·½·¨·µ»ØµÄÍùÍù²»ÊÇÎÒÃÇÐèÒªµÄ£¬Ëü·µ»ØµÄÊÇÀàÃû¼ÓÉÏ“@”¼ÓÉÏÊ®Áù½øÖƵÄhashÖµ¡£ÕâÏÔÈ»²»ÊÇÎÒÃÇÏëÒªµÄ£¬ËùÒÔ±ØÐëÖØÔØtoStringº¯Êý¡£
ºÜ¼òµ¥µÄÀý×Ó£¬ÈçÏÂ
System.out.println("Failed to connect: " + phoneNumber);
Èç¹û²»ÖØÔØ£¬ÔòÓÐ
Failed to co ......

Effective Java ѧϰ±Ê¼Ç (11)

CloneÕâ¸ö·½·¨ºÜ¼¦Àߣ¬Ô­ÒòÊÇÒòΪËüÊÇÊܱ£»¤µÄ(protected)£¬Æä¶þCloneÕâ¸ö·½·¨ÊÇ¿ÉÑ¡µÄ£¬¼´ÓпÉÄÜÀàûÓÐÌṩÕâ¸ö·½·¨¡£
cloneûÓе÷Óù¹Ô캯Êý£¬¶øÇÒÈç¹û¸¸ÀàûÓÐʵÏÖcloneµÄ»°£¬×ÓÀàÓÀÔ¶Ò²²»¿ÉÄÜÕýȷʵÏÖclone.
×ÜÖ®£¬cloneÊǸöºÜÍ·Í´µÄº¯Êý£¬Èç¹ûÒªÕýȷʵÏÖ£¬±ØÐ뿼Âǵ½É±´µÄÇé¿ö£¬·ñÔò±»¿Ë¡³öÀ´µÄ¶ÔÏó¾Í²»ÊǶÀÁ¢µÄ ......

JAVA Web ±à³ÌµÚÒ»Ìì

Ò»¡¢
HTTP
ЭÒéµÄÀí½â
1.      

ʲôÊÇ
HTTP
ЭÒé
HTTP
ÊÇÒ»ÖÖ³¬±¾ÎÄ´«ÊäЭÒ飬ÊÇÒ»Ì×¼ÆËã»úÔÚÍøÂçÖÐͨÐŵĹæÔò¡£ËûÊÇÒ»ÖÖÎÞ״̬µÄ´«Ê䷽ʽ¡£
2.      

HTTP
ЭÒéµÄ¸ñʽ
HTTP
µÄÇëÇó£º
       

Ç ......

JavaÀà¼ÓÔØÄÚÄ»

¡¡¡¡Àà¼ÓÔØÊÇjavaÓïÑÔÌṩµÄ×îÇ¿´óµÄ»úÖÆÖ®Ò»¡£¾¡¹ÜÀà¼ÓÔØ²¢²»ÊÇÌÖÂÛµÄÈȵ㻰Ì⣬µ«ËùÓеıà³ÌÈËÔ±¶¼Ó¦¸ÃÁ˽âÆä¹¤×÷»úÖÆ£¬Ã÷°×Ôõô×ö²ÅÄÜÈÃÆäÂú×ãÎÒÃǵÄÐèÒª¡£ÕâÄÜÓÐЧ½ÚÊ¡ÎÒÃǵıàÂëʱ¼ä£¬´Ó²»¶Ïµ÷ÊÔClassNotFoundException, ClassCastExceptionµÄ¹¤×÷ÖнâÍѳöÀ´¡£
¡¡¡¡ÕâÆªÎÄÕ´ӻù´¡½²Æð£¬±ÈÈç´úÂëºÍÊý¾ÝµÄ²»Í¬Ö®´¦ÊÇʲ ......

Java Ï£¶ûÅÅÐò£¨ËõСÔöÁ¿ÅÅÐò£©

      Ï£¶ûÅÅÐòËã·¨Äܹ»³ÉÁ¢µÄ»ù´¡ÊÇÊý×éÒ²½Ó½üÓÐÐòÖ±½Ó²åÈëÅÅÐòËã·¨µÄʱ¼äЧÂÊÔ½¸ß¡£Ï£¶ûÅÅÐòËã·¨ÊÇÔÚ²»¼õÉÙÊý×éÔªËØµÄ¸öÊýÇé¿öϽ«Êý×é·Ö×飬´Ó¶ø½«ÅÅÐòºÃµÄÊý²åÈëµ½ÐÂÊý×éÖÐÈ¥¡£¹Ø¼üÔÚÓÚÆä˼Ïë¡£
Ë㷨ʵÏÖÈçÏ£º
/**
* Ï£¶ûÅÅÐòÓÖ³ÆÎªËõСÔöÁ¿ÅÅÐò
* @param a ÓÃÓÚÅÅÐòµÄÊý×é
* @pa ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ