1 java.util.Collection接口继承自Iterable接口 Collection里面有size() isEmpty() clear() contains() add() remove() iterator()这几个原生的方法
2 iterator接口有hasNext() next() remove()这三个原生的方法 其中remove 尤其值得注意,改方法可以删除Next之后最新返回的项,此后我们不再调用remove,知道我们再一次的调用next,虽然集合Collection中也有remove方法,但是迭代器iterator中的remove方法有更多的优点。
iterator中的remove方法优点在于,collection中的remove在删除之前必须好到要删除的项,这对于集合来说也是一个开销,除非我们已经知道了具体要删除的位置
3我们在使用增强for循环的时候 其实是间接在使用iterator迭代器,
4需要强烈注意的点,在我们使用iterator进行遍历或者是使用增强for循环进行遍历的时候,如果用iterator中的remove,此时不可以使用集合collection中自带的删除或者增加等方法,因为迭代器的不会自动进行更新。最好用迭代器的remove
5linkedList是双链表
6对于内部类问题看数据结构P55 结论:在内部类中可以直接使用外部类的成员变量,虽然是private,不需要外部类.this.变量,只有在内部类和外部类的方法或者变量有冲突的时候需要加一个前缀。 至于私有静态的嵌套类,完全没必要,多此一举**
易错知识点
最新推荐文章于 2022-02-09 23:09:37 发布