------- android培训、java培训、期待与您交流! ----------
在编写程序的时候,我们不知道所需对象的数量,甚至不知道确切的类型,为了解决这样的问题,推出了集合(对象的引用),例如前面学的数组,数组只是一种能固定大小固定类型的对象引用,如果明确知道自己要保存的是一组基本数据类型,应该使用数组,否则就应该使用集合。
集合的基本类型有 list set map
list 以特定的顺序保存元素 ArrayList 插入和移除元素较慢LinkedList 插入删除较快,随机访问较慢
set 元素不能重复
集合常见方法
add()添加元素
contains() 确定某个对象是否在列表中,
remove()删除一个对象
indexOf()获取该对象在list中所处位置的索引号
比较两个对象是否相同 equals()
retainAll() 交集
removeAll 删除所有元素
isEmpty()是否为空 clear()删除所有 toArray()将集合做为数组
ArrayList a1 =new ArrayList();
ArrayList a2 =new ArrayList();
//添加
a1.add("a");
a1.add("bb");
a1.add("c");
a1.add("d");
a1.add("d");
a1.add("d");
// 获取集合长度
System.out.println(a1.size());
//转数组[a, bb, c, d, d] 没下标
a1.toArray();
System.out.println(a1);
//remove 删除 clear()全删
a1.remove(2);
System.out.println(a1);
//判断是否存在 contains
System.out.println(a1.contains("bb"));
//取出元素
Iterator it= a1.iterator();
//System.out.println(it.next());
while(it.hasNext())
{
System.out.println(it.next());
}
iterator ()要求容器返回一个iterator ,iterator 将准备好返回序列的第一个元素
next()获得序列中的下一个元素
hasNext() 检查序列中是否还有元素
remove()删除最新返回的元素
在调用remove()之前必须先调用next()
linkedList 删除插入操作比ArrayList 更高效,但随机访问要慢一些,
set 不保存重复的元素,