数组

  • 如何权衡是使用无序的数组还是有序的数组

    • 主要看时间复杂度,有序数组查找时间比无序数组的时间短
    • 相反,在插入时无序数组的时间比有序数组的时间短,因为值大的元素需要往后移动来给新元素腾位置(从小到大排列)

       

  • 怎么判断数组是 null 还是为空

    • 那要看这个数组是否已经实例化,如果实例化长度为0,则数组为空。如果没有实例化,则数组为null。

       

  • 怎么打印数组? 怎样打印数组中的重复元素

Array 和 ArrayList有什么区别?什么时候应该使用Array而不是ArrayList  

存储内容比较:

array是数组,arraylist是列表,array可以存储基本类型和对象类

arraylist只能存储对象类型

 array数组在存放的时候一定是同种类型的元素。ArrayList就不一定了,因为ArrayList可以存储Object。

 空间大小比较:

array空间大小是一定的,空间不够时也不能申请,所以要提前确定好空间大小

arraylist空间是动态增长的,空间不够时,它会自动创建个比原来空间大一倍的数组,然后再将所有的数据复制过去,抛弃旧数组。

并且,每次添加新元素的时候都会检查空间是否充足。

方法比较:

arraylist方法更多,有添加全部,删除全部等

使用场景

数组适合在程序运行的整个过程中,一些不变的数据,可以放到全局数组里

如果对数据查找较多,建议使用arraylist

如果对元素频繁操作,或者操作超大量数据时,不建议使用arrylist,建议使用linkedlist

 

  • 数组和链表数据结构描述,各自的时间复杂度

参见网址:http://blog.csdn.net/u013632854/article/details/70338252

  • 数组有没有length()这个方法? String有没有length()这个方法

数组没有length方法,string有length()方法

 

posted @ 2017-12-27 11:15  带刺的小花277  Views(155)  Comments(0Edit  收藏  举报