Collection集合
集合是一种容器,Collection是所有单列集合的父类;相比数组,集合存储更加灵活,集合长度是不固定的,储存基本数据类型必须是包装类
集合常用方法:
public boolean add(E e) 添加一个元素到集合中;
public void clear() 清空一个集合;
public boolean remove(E e) 移除某一个元素;
public boolean contains(E e) 是否包含某元素;
public boolean isEmpty() 集合是否为空;
public int size() 集合长度;
public Object[] toArray() 集合类型转换数组类型;
Iterator迭代器
主要用于遍历集合,类似指针;迭代器实现原理,指正指向当前位置,判断hasNext()是否有下一个元素,如果有next()迭代下一个元素,指针向后移移一位;
常用遍历方法:
public Iterator iterator() 获取集合对应的迭代器;
public E next() 迭代下一个元素;
public boolean hasNext() 是否有元素可以迭代;
增强for:
JDK1.5之后出现,底层实现原理是迭代器;更加方便了集合的遍历;
格式
for(元素的数据类型 变量 : Collection集合or数组){
//写操作代码
}
泛型
一般在创建对象时,将未知的类型确定具体的类型。当没有指定泛型时,默认类型为Object类型
好处:避免了类型强制转化的麻烦
1,作用在类上 修饰符 class 类名<代表泛型的变量> { }
2,作用在方法上 修饰符 <代表泛型的变量> 返回值类型 方法名(参数){ }
3,作用在接口上 修饰符 interface接口名<代表泛型的变量> { }
泛型的通配符<?>:
例如可以接受任何类型的这个类的对象 例如 Collection<?>
泛型上限 类型名称 <? extends 类 > 对象名称:
接受该类型或者其子类
泛型下限 类型名称 <? super 类 > 对象名称:
接受该类型或者其父类