集合相关
变量–容器
存取一个元素
数组–容器
一组具有某种特性的数据存放在一起
存储一组元素(数据类型一致) 长度固定
集合–容器
与数组类似 集合的长度存储之后还能改变
集合用来存储一组元素
Collection
存的都是value
List
有序可重复
Set
无序无重复
Map
存储的是以key-value形式存在
key无序无重复 value无序可重复
序:顺序
添加进去的元素 取得元素的顺序一致 注意指的不是集合自己的顺序
重复:两个对象一致
List集合
1.ArrayList 2.LinkList 3.Vector
ArrayList——-底层就是一个数组
所属的包 java.util
如何创建对象
无参数构造方法 带默认参数的都构造方法 带collection参数的构造方法
常用的方法 —小容器
存 add
取 get
删 remove
改
个数 size
add(E e) add(int index,E e)
addAll(Collection c); add(int index,Collection c)
clear();将集合内的元素全部清除
boolean = contains(Object);找寻一个给定元素集合中是否拥有
ensureCapacity(int minCapacity);
E = get(int index);
int = indexOf(Object obj); lastindexOf();
isEmpty();
iterator;//迭代器 1.5之后增强for
removeAll 差集 retainAll()交集
addAll()并集
E = set(int index,E value)
int size();
List = subList(int index,E value)
toArray();集合变成数组
toArray(T[]);
trimToSize();//变成有效元素个数那么长
arryList底层是一个Object[]
什么类型都可以存进去
取出来的时候多态效果 需要自己造型 显得用起来非常麻烦
JDK1.5之后—->泛型
用来规定数据类型的,定义的时候用一个符号代替某种类型
在使用的时候具体的数据类型 将定义的那个符号替换掉
ArrayBox<T>
泛型可以用在哪里?
泛型类
类定义的时候描述某种数据类型 集合就是这样使用
泛型接口
与泛型类的使用基本一致 子类实现接口时必须添加泛型
public interface Text<X>{
public X value;
}
public class Son<X>implements Test<X>
泛型方法
方法调用时传参数 方法的泛型与类无关 带有泛型的方法可以不放在带有泛型的类中