Java知识点整理

集合

2018-01-18  本文已影响0人  程序员必修课

List和Set

set集合中不会出现两个equals比较为true的元素

list是有序集,set通常是无序的。

集合持有对象的引用

存入集合的元素应妥善重写equals方法,因为集合的很多方法都参考equals结果

不同的集合迭代器的实现不完全相同

Iterator是接口

遍历集合有两个方法:
boolean hasNext()
E next()

遍历集合必须遵循:问,取,删的过程。
删不是必须操作
hasNext就是问的过程
next就是取的过程

使用迭代器删除集合元素只能使用迭代器提供的remove方法

foreach只用于遍历循环和数组

linkList易于增删
ArrayList易于查找

get和set方法是list集合独有的,set集合是不存在的

get和set方法是基于下标操作的,而list是有序的~

add和remove方法是list独有的

对子集的任何操作都会影响原集合

实现Comparable接口时,通常要指定泛型,而泛型的类型,就是当前的类。

compareTo的返回值的正负决定了大小

当元素自身提供的比较规则,不能满足我们对于排序的需求时,我们可以提供一个比较器来指定比较规则。

当我们需要临时使用某一个接口的实现类的实例或一个类的子类实例时,这是我们使用匿名内部类的最佳时机,匿名内部类的特点是不需要声明类,且只有一个实例。

栈对操作有可追溯性

Map接口

Map中作为key的对象在集合中是不可以重复的。

在生成equals和hashCode时,应选中equals参与比较的属性即可。

当我们使用一个对象作为key存入hashMap后,尽量不要修改可能影响hashCode值的属性。

上一篇 下一篇

猜你喜欢

热点阅读