集合【第一篇 List集合的API的使用(不讨论泛型集合)】

来源:互联网 发布:天刀无缺染色数据 编辑:程序博客网 时间:2024/06/15 23:31

List集合哪来的?

List是一个接口继承自Collection 接口,Collection中的方法List都可以用,并且比它更全面细致

List集合的内容

集合中储存的是对象的地址(遥控器)!!!!
针对List接口,有若干种实现,常用的类有ArrayList、Vertor、LinkedList、Stack
List集合总体特点:所储存的内容       有序,不唯一   

jdk1.8版本之前,集合的API

首先讨论Colleaction中:(因为Collection中有的List中都有)
返回类型  用法
 int size();           得到集合的大小(不是经常说,嘿看那个女孩的size么,多好理解)
boolean isEmpty();      判断是否为空集合

boolean contains(Object o) 查找传入对象是否存在于集合中

boolean add(E e) 向集合传入元素(往最后一个存在的值后传,跟List的add有区别) 

boolean remove(Object o) 删除传入的元素,若果删除返回true(实际使用其实是用不到返还值的)

boolean containsAll(Collection c)  比较两个集合的所有元素是否相同,(括号内传入一般为小于调用集合的集合)

boolean addAll(Collection c) 传入整个集合的元素

boolean removeAll(Collection c) 移除整个集合

boolean retainAll(Collection c) 保留两个集合相同的内容
void clear(); 清空该集合(这里只是清空了指针,对象还在)
再来讨论,List中:(比父类多出来的方法)
因为List是有序的集合,(有序即为:含有下标)所以扩展了几个可以利用下标的
方法
返回类型  用法
boolean addAll(int index,Collection c) (跟collcetion中的区别来了)从index位置传入该集合
void add(int index,E e) (跟collcetion中的区别来了)从index位置插入一个元素e
E get(int index) 得到index位置的元素
E set(int index,E e) 将index位置的元素改成传入元素e
如果想知道替换掉的元素,则用一个对象来接 set(int index,E e)

E remove(int index) 删除index位置的元素
int indexOf(Object o) 得到该元素第一次出现的索引
int lastIndexOf(Object o) 得到该元素最后一次出现的索引
boolean hasPrevious() 集合前一个位置是否有值(其实就是当前位置)
E previous() 得到前一个位置的元素
集合 subList(int from,int toIndex) 得到从from到  toIndex之前的集合内容

注意:①在List这种含有下标的集合中使用remove()时,括号中传入int型的话是回去找索引的,而想要找值是要转成封装类
  ②subList方法所截取得到的集合,它改变,之前的集合结汇随之改变

集合的遍历:

List集合:
用Iteretor迭代   也可以用ListIteretor迭代    
他们的区别是:在listIteretor中  可以  增、删、改、查(只能做一个行为),并且可以倒序打印
而Iteretor则不行
用法:
List<String> list = new ArrayList<String>();//需要导工具包 java.util.*;list.add("aaa");list.add("bbb");list.add("ccc");//方法一://超级for循环遍历for(String attribute : list) {  System.out.println(attribute);}//方法二://对于ArrayList来说速度比较快, 用for循环, 以size为条件遍历:for(int i = 0 ; i < list.size() ; i++) {  system.out.println(list.get(i));}//方法三://集合类的通用遍历方式, 从很早的版本就有, 用迭代器迭代Iterator it = list.iterator();while(it.hasNext()) {  System.ou.println(it.next);}


原创粉丝点击