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

JavaÖÐtoArrayµÄÓ÷¨Ì½¾¿(javaÊý×éÓëlistת»»)


Ò»£®             Incident
import java.util.ArrayList;  
import java.util.List;  
public class Test {  
    public static void main(String[] args) {  
          
        List<String> list = new ArrayList<String>();   
        list.add("1");   
        list.add("2");   
        String[] tt =(String[]) list.toArray(new String[0]);   
    }  
}
 
Õâ¶Î´úÂëÊÇûÎÊÌâµÄ£¬µ«ÎÒÃÇ¿´µ½String[] tt =(String[]) list.toArray(new String[0]) ÖеIJÎÊýºÜÆæ¹Ö£¬È»¶øÈ¥µôÕâ¸ö²ÎÊýnew String[0]È´ÔÚÔËÐÐʱ±¨´í¡£¡£¡£
¶þ£®             Root Cause Analysis
¾­Ñо¿·¢ÏÖtoArrayÓÐÁ½¸ö·½·¨£º
public Object[] toArray() {  
   Object[] result = new Object[size];     
   System.arraycopy(elementData, 0, result, 0, size);     
   return result;  
}  
²»´ø²ÎÊýµÄtoArray·½·¨£¬Êǹ¹ÔìµÄÒ»¸öObjectÊý×飬Ȼºó½øÐÐÊý¾Ý¿½±´£¬´Ëʱ½øÐÐתÐ;ͻá²úÉúClassCastException£¬ÕâÒ²¾ÍÊÇÉÏÊöÎÊÌâµÄroot causeÁË¡£
 
 
public Object[] toArray(Object a[]) {     
if (a.length < size)         
a = (Object[])java.lang.reflect.Array.newInstance(a.getClass().getComponentType(), size);       System.arraycopy(elementData, 0, a, 0, size);     
if (a.length > size)         
a[size] = null;     
return a;  
}
¶ø


Ïà¹ØÎĵµ£º

ÎÒ¶ÔJava Serializable£¨ÐòÁл¯£©µÄ×ܽá

1¡¢ÐòÁл¯ÊǸÉʲôµÄ£¿
       ¼òµ¥Ëµ¾ÍÊÇΪÁ˱£´æÔÚÄÚ´æÖеĸ÷ÖÖ¶ÔÏóµÄ״̬£¨Ò²¾ÍÊÇʵÀý±äÁ¿£¬²»ÊÇ·½·¨£©£¬²¢ÇÒ¿ÉÒ԰ѱ£´æµÄ¶ÔÏó״̬ÔÙ¶Á³öÀ´¡£ËäÈ»Äã¿ÉÒÔÓÃÄã×Ô¼ºµÄ¸÷ÖÖ¸÷ÑùµÄ·½·¨À´±£´æobject states£¬µ«ÊÇJava¸øÄãÌṩһÖÖÓ¦¸Ã±ÈÄã×Ô¼ººÃµÄ±£´æ¶ÔÏó״̬µÄ»úÖÆ£¬ÄǾÍÊÇÐòÁл¯¡£
2¡¢Ê²Ã´Çé¿öÏ ......

»ØÎĵÄjavaʵÏÖ£¨Õ»ºÍ¶ÓÁеÄÅäºÏ£©

package com.algrothim.sample.plo;
/**
* @author yuan
*ÕâÒ»¸öÅжÏÒ»¸ö×Ö·û´®ÊÇ·ñΪ»ØÎĵÄÀý×Ó¡£
*ÀïÃæ½èÖúÈý¸öÖØÒªµÄÊý¾Ý½á¹¹µÄ֪ʶ£º
*Õ»£¬¶ÓÁУ¬ÒÔ¼°ÒýÓá£
*´Ë³ÌÐòµÄÔ­ÀíÊÇ£º¸ù¾ÝÕ»µÄºó½øÏȳö£¬ÒÔ¼°¶ÓÁеÄÏȽøÏȳöµÄÔ­Àí¡£
*Á½¸öADTÊÇͬ²½µÄ£¬Èç¹û´ÓÕ»³öÀ´µÄ×Ö·ûÓë´Ó¶ÓÁгöÀ´µÄ×Ö·ûÈ«²¿Ò»Ñù£¬
*˵Ã÷Ϊ ......

JAVAÖйØÓÚVectorµÄһЩÊÂ

        ÎÒÃÇÖªµÀ£¬Vector ÀàÌṩÁËʵÏÖ¿ÉÔö³¤Êý×éµÄ¹¦ÄÜ£¬Ëæ×Ÿü¶àÔªËØ¼ÓÈëÆäÖУ¬Êý×é±äµÄ¸ü´ó¡£ÔÚɾ³ýÒ»Ð©ÔªËØÖ®ºó£¬Êý×é±äС¡£
Vector ÓÐÈý¸ö¹¹Ô캯Êý£¬
public Vector(int initialCapacity,int capacityIncrement)
public Vector(int initialCapacity)
public Vector()
  ......

java °²È«É³ÏäÄ£ÐÍÏê½â£¨×ª£©


Æðµ½µÚÒ»µÀ°²È«±£ÕÏ×÷ÓõĔ˫Ç×ίÅÉÀà¼ÓÔØÄ£ÐÍ”
Ë«Ç×ίÅÉ·½Ê½µÄÀà¼ÓÔØ£¬Ö¸µÄÊÇÓÅÏÈ´Ó¶¥²ãÆô¶¯Àà¼ÓÔØÆ÷¿ªÊ¼£¬×Ô¶¥Ïòϵķ½Ê½¼ÓÔØÀàµÄÄ£ÐÍ£¨²Î¼ûµÚÒ»ÌõÀà×°ÔØÆ÷Ìåϵ½á¹¹£©¡£
ÕâÖÖÄ£Ð͵ĺô¦ÊÇ£¬µ×²ãµÄÀà×°ÔØÆ÷×°ÔØµÄÀàÎÞ·¨Óë¶¥²ãÀà×°ÔØÆ÷×°ÔØµÄÀàÏ໥µ÷Óá£
ÄÄÅÂÊÇͬ°üϵÄÀֻ࣬ҪËûÃDz»ÊôÓÚͬһÀà×°ÔØÆ÷£¬ ......

±àд¸ßÐÔÄÜJavaµÄ×¢ÒâµÄ¼¸µã

ÔÚ¿ª·¢Öбàд¸ßÐÔÄÜJavaµÄ×¢Òâµã
1.Òª°Ñ×¢Òâµã·Åµ½Éè¼ÆÉÏ.
2.²»ÒªÒÀÀµ±àÒëÆ÷µÄÓÅ»¯¼¼Êõ,ÕýÈ·µÄÀí½âÔËÐÐÆÚ´úÂë,À´Ìá¸ßµÄ´úÂëµÄÔËÐÐËÙ¶È.
3.¶Ô¶ÔÏóµÄ´´½¨³É±¾½µµ½×îµÍ(±ÈÈç:ºÏÀíÉè¼ÆÀàµÄ´óС¡¢ºÏÀíÉè¼ÆÀàµÄÉî¶È¡¢²»Òª´´½¨²»±ØÒªµÄ¶ÔÏóµÈµÈ¡£¡£)
4.¾¡Á¿Ê¹ÓÃStringBufferÁ¬½Ó×Ö·û´®¡£
5.½µµÍͬ²½´øÀ´µÄÐÔÄÜÓ°Ïì¡£
ÒÔÉÏÖ»Ê ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ