集合的体系:
----------| Collection 单列集合 的根接口
--------------| List 如果是实现了List接口的集合类,该集合类具备的特点:有序,可重复。
--------------| Set 如果是实现了Set接口的集合类,该集合类具备的特点: 无序,不可重复。
有序: 集合的有序不是指自然顺序,而是指添加进去的顺序与元素出来的顺序是一致的。
List接口中特有方法:
添加
add(int index, E element)
addAll(int index, Collection<? extends E> c)
获取:
get(int index)
indexOf(Object o)
lastIndexOf(Object o)
subList(int fromIndex, int toIndex)
修改:
set(int index, E element)
迭代
listIterator()
package lx5;
import java.util.ArrayList;
import java.util.List;
public class Demo1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
List list = new ArrayList();
list.add("更好");
list.add("环境");
list.add("和我");
list.add("考试");
System.out.println("1集合的元素:"+list);
list.add(1, "赵本山");
List list2 = new ArrayList();
list2.add("本山");
list2.add("小沈阳");
list.addAll(2,list2);
System.out.println("1集合的元素:"+list);
System.out.println("2集合的元素:"+list2);
System.out.println("get方法获取元素:"+list.get(1));
for (int i = 0; i < list.size() ; i++) {
System.out.print(list.get(i)+",");
}
System.out.println();
System.out.println("找出指定元素第一次出现在集合中 的索引值:"+ list.indexOf("本山"));
System.out.println("找指定的元素最后一次出现在集合中的索引值:"+list.lastIndexOf("小沈阳"));
List subList = list.subList(1, 3);
System.out.println("子集合的元素是:"+ subList);
list.set(3, "回家");
System.out.println("集合的元素:"+list);
}
}
迭代
listIterator()
ListIterator特有的方法:
添加:
hasPrevious() 判断是否存在上一个元素。
previous() 当前指针先向上移动一个单位,然后再取出当前指针指向的元素。
next(); 先取出当前指针指向的元素,然后指针向下移动一个单位。
---------------------------
add(E e) 把当前有元素插入到当前指针指向的位置上。
set(E e) 替换迭代器最后一次返回的元素。
使用三种方式遍历集合的元素.
第一种: 使用get方法遍历。
第二种: 使用迭代器正序遍历。
第三种: 使用迭代器逆序遍历。
package lx5;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
public class Demo2 {
public static void main(String[] args) {
// TODO Auto-generated method stub
List list = new ArrayList();
list.add("更好");
list.add("环境");
list.add("和我");
list.add("考试");
System.out.println("集合的元素:"+list);
System.out.println("======get方法遍历=======");
for(int i = 0 ; i<list.size() ; i++){
System.out.print(list.get(i)+",");
}
System.out.println("\r\n======使用迭代器正序遍历==========");
ListIterator it = list.listIterator(); //获取到迭代器
while(it.hasNext()){
System.out.print(it.next()+",");
}
System.out.println("\r\n======使用迭代器逆序遍历==========");
while(it.hasPrevious()){
System.out.print(it.previous()+",");
}
it.next();
it.next();
System.out.println("集合的元素:"+list);
System.out.println("有上一个元素吗?"+ it.hasPrevious());
System.out.println("获取上一个元素:"+it.previous());
System.out.println("获取上一个元素:"+ it.previous());
}
}
---------------------
【转载】
作者:江南233244
原文:https://blog.csdn.net/qq_3913124 ... 421?utm_source=copy
|
|