java中Array和ArrayList的区别

这两个在平时的工作中都时常用到,偶然间发现面试还问这个,特地整理一下
简单来说,ArrayList是一个长度可以自动增长的Array
其实上面一句话就道尽了两者最核心的区别
(1)长度:Array长度固定,ArrayList可以动态扩容
(2)效率:效率上Array>ArrayList,原因自然在于ArrayList动态扩容造成了效率损耗

两者之间的转换也非常简单:
(1)Array转ArrayList

String[] a = {"a","b","c"};
        List alist = Arrays.asList(a);

(2)ArrayList转Array

List list=new ArrayList();  
        list.add("a");  
        list.add("b");  
        list.add("c");  
        int len=list.size();  
        String[] array = (String[])list.toArray(new String[len]);  
        for(int i=0;i<array.length;i++){  
            System.out.println(array[i]);  
        }
已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 书香水墨 设计师:CSDN官方博客 返回首页