对于集合的自我总结!!!!!!!

在这里插入图片描述
由上图可以看出Iterable是Collection集合的爸爸,是其他继承了Collection集合的爷爷!
1,在这里小编只想和大家说一下Iterator和Collection它们remove()方法的区别!
性能方面:
(1)Collection的remove(object)它带参数可以删除集合中的某一项
它要找到这一项的位置要通过单链表结构查询,单链表结构的效率较低,要一个一个遍历才能找到这个对象。

                            (2)Iterator的remove() 它在有下一项(next)的时候去才去执行
                                           Iterator的remove()方法它结合了next()方法
                                           在出现下一项的时候去执行删除!
             容错方面:
             在使用iterator遍历时,如果使用Collection的remove则会出现异常(ConcurrentModificationException),因为集合中的对象的个数会改变而iterator内部对象的个数不会,不一致则会出现异常!
             而iterator的remove不会报错因为iterator内部的对象个数和集合中的对象的个数会保持一致

ArrayList 和LinkedList
ArrayList (数组结构):get和set调用花销小,查询的速度快,一般用于查询
LinkedList (链表结构) :get和set调用花销大,不适合用作于查询,可以用作于删除,修改,新增

Array是java中的数组:
int[] a= new int[10]
int a[] a = new int[10]
int a[] a ={1,2,3}

数组中存放的元素和个数固定并且类型一样!

Array转list,可以使用Array.asList

list 转Array,可以使用list.ToArray

猜你喜欢

转载自blog.csdn.net/csdnlcw/article/details/88174972