码迷,mamicode.com
首页 > 编程语言 > 详细

Java---26---List集合共性方法

时间:2015-04-07 21:44:14      阅读:218      评论:0      收藏:0      [点我收藏+]

标签:list   java   迭代器   迭代   遍历   

List中元素是有序的,元素可以重复,因为该集合有索引。

方法摘要
 boolean add(E e)
          向列表的尾部添加指定的元素(可选操作)。
 void add(int index, E element)
          在列表的指定位置插入指定元素(可选操作)。
 boolean addAll(Collection<? extends E> c)
          添加指定 collection 中的所有元素到此列表的结尾,顺序是指定 collection 的迭代器返回这些元素的顺序(可选操作)。
 boolean addAll(int index, Collection<? extends E> c)
          将指定 collection 中的所有元素都插入到列表中的指定位置(可选操作)。
 void clear()
          从列表中移除所有元素(可选操作)。
 boolean contains(Object o)
          如果列表包含指定的元素,则返回 true
 boolean containsAll(Collection<?> c)
          如果列表包含指定 collection 的所有元素,则返回 true
 boolean equals(Object o)
          比较指定的对象与列表是否相等。
 E get(int index)
          返回列表中指定位置的元素。
 int hashCode()
          返回列表的哈希码值。
 int indexOf(Object o)
          返回此列表中第一次出现的指定元素的索引;如果此列表不包含该元素,则返回 -1。
 boolean isEmpty()
          如果列表不包含元素,则返回 true
 Iterator<E> iterator()
          返回按适当顺序在列表的元素上进行迭代的迭代器。
 int lastIndexOf(Object o)
          返回此列表中最后出现的指定元素的索引;如果列表不包含此元素,则返回 -1。
 ListIterator<E> listIterator()
          返回此列表元素的列表迭代器(按适当顺序)。
 ListIterator<E> listIterator(int index)
          返回列表中元素的列表迭代器(按适当顺序),从列表的指定位置开始。
 E remove(int index)
          移除列表中指定位置的元素(可选操作)。
 boolean remove(Object o)
          从此列表中移除第一次出现的指定元素(如果存在)(可选操作)。
 boolean removeAll(Collection<?> c)
          从列表中移除指定 collection 中包含的其所有元素(可选操作)。
 boolean retainAll(Collection<?> c)
          仅在列表中保留指定 collection 中所包含的元素(可选操作)。
 E set(int index, E element)
          用指定元素替换列表中指定位置的元素(可选操作)。
 int size()
          返回列表中的元素数。
 List<E> subList(int fromIndex, int toIndex)
          返回列表中指定的 fromIndex(包括 )和 toIndex(不包括)之间的部分视图。
 Object[] toArray()
          返回按适当顺序包含列表中的所有元素的数组(从第一个元素到最后一个元素)。
<T> T[]
toArray(T[] a)
          返回按适当顺序(从第一个元素到最后一个元素)包含列表中所有元素的数组;返回数组的运行时类型是指定数组的运行时类型。



import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;

/**
 * 
 * List中特有的方法:凡是可以操作角标的方法都是
 * 
 * 增 add (index,element); addAll (index,Collection); 删 remove (index); 改 set
 * (index,element); 查 get (index); subList (from,to); listIterator ();
 * 
 * @author Caesar
 * 
 *         List集合特有的迭代器,ListIterator是iterator的子接口 在迭代时,不可以通过集合对象的方法操作集合中的元素
 *         只能对元素进行判断,取出,删除的操作 如果想要其他的操作,如添加,修改等,就需要使用期子接口ListIterator
 *         该接口只能通过List集合的ListIterator方法获取。
 */

public class ListDemo {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		// method_1();
		method_2();
	}

	public static void method_2() {
		// 演示列表迭代器
		ArrayList al = new ArrayList();
		al.add("01");
		al.add("02");
		al.add("03");

		/*
		 * // 在迭代过程中准备添加或者删除元素 Iterator it = al.iterator(); 迭代器操作 while
		 * (it.hasNext()) { Object object = it.next(); if (object.equals("02"))
		 * { //al.add("05");//并发访问,可能会产生安全隐患,不能对同一组元素同时进行不同的操作 it.remove
		 * ();//集合容器中的02也会被删除,将02的引用从集合中删除 //迭代器操作中没有添加操作。 } sop(it.next()); }
		 */
		ListIterator li = al.listIterator();
		while (li.hasNext()) {
			Object object = li.next();
			if (object.equals("02")) {
				li.add("08");
			}
		}
		sop(al);
		sop(li.hasNext());
		sop(li.hasPrevious());

		// 反向遍历
		while (li.hasPrevious()) {
			sop(li.previous());
		}

	}

	public static void method_1() {
		ArrayList al = new ArrayList();
		al.add("01");
		al.add("02");
		al.add("03");

		sop("原集合是:" + al);

		// 在指定位置添加元素
		al.add(1, "09");

		sop(al);

		// 删除元素
		al.remove(2);
		sop(al);
		// 修改元素
		al.set(0, "00000005");
		sop(al);

		// 通过角标获取元素

		sop("get 2 =  " + al.get(2));

		// 获取所有元素

		for (int x = 0; x < al.size(); x++) {
			System.out.println(al.get(x));
		}
		Iterator it = al.iterator();
		while (it.hasNext()) {

			sop(it.next());
		}

		// 通过indexOf 获取对象的位置

		sop("index = " + al.indexOf("03"));

		List sub = al.subList(1, 3);
		sop(sub);
	}

	public static void sop(Object obj) {
		System.out.println(obj);
	}

}


Java---26---List集合共性方法

标签:list   java   迭代器   迭代   遍历   

原文地址:http://blog.csdn.net/u013476556/article/details/44925175

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!