Java_Collection_ArrayList

原创 2018年04月15日 17:08:23

总述:集合里面只能放字符串

Resizable-array implementation of the List interface.

booleanadd(E e)
Appends the specified element to the end of this list.

添加字符


booleanaddAll(Collection<? extends E> c)
Appends all of the elements in the specified collection to the end of this list, in the order that they are returned by the specified collection's Iterator.

添加一个集合的字符串

voidclear()
Removes all of the elements from this list.

清除集合里的元素

booleancontains(Object o)
Returns true if this list contains the specified element.

交集

booleanisEmpty()
Returns true if this list contains no elements.

是否为空

Iterator<E>iterator()
Returns an iterator over the elements in this list in proper sequence.

迭代器遍历集合遵循问删取的遍历过程

package collection10;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;

/**
 * 遍历集合元素
 * Collection提供了统一的遍历集合元素方式
 * 迭代器模式
 * 
 * Iterator iterator()
 * 该方法可以获取一个用于遍历当前集合元素的迭代器
 * 实现类。
 * 不同的集合实现类都提供了一个可以用于遍历自身的
 * 迭代器,我们无需记住每种迭代器实现类的名字,只需
 * 要以Iterator接口接收并调用迭代方法遍历即可。
 * 
 * 迭代器遍历集合遵循:问,取,删的遍历过程
 * 其中删除元素不是必须操作
 * Returns an iterator over the elements in this collection.
 * @author soft01
 *
 */
public class CollectionDemo0610 {
	public static void main(String[] args) {
		Collection c = new ArrayList();
		c.add("one");
		c.add("#");
		c.add("two");
		c.add("#");
		c.add("three");
		c.add("#");
		c.add("four");
		c.add("#");
		c.add("five");
		c.add("#");
		System.out.println(c);
		Iterator it = c.iterator();
		/*
		 * boolean hasNext()
		 * 判断集合是否还有元素可以遍历
		 * 
		 * E next()
		 * 取出集合中下一个元素
		 */
		while(it.hasNext()) {
			String str = (String)it.next();
			if("#".equals(str)) {
				/*
				 * 迭代器要求遍历的过程中不允许
				 * 通过集合的方法增删元素,否则会
				 * 抛出异常,删除元素可以通过迭代器
				 * 提供的remove方法删除,删除的是
				 * 本次通过next方法迭代的元素
				 */
				it.remove();
			}
			System.out.println(str);
		}
		System.out.println(c);
	}
}

最后,注意一个指向,普通方法运作完成,会断掉他所有的引用

package collection10;

import java.util.ArrayList;
import java.util.Collection;

public class Demo10 {
	public static void main(String[] args) {
		int a = 1;
		String b = "abc";
		Point10 p = new Point10(1, 2);
		Collection c = new ArrayList();
		c.add(p);
		dosome(a , b, p, c);
		System.out.println("a" + a);//1
		System.out.println("b" + b);//abc
		System.out.println("p" + p);//2,2
		System.out.println("c" + c);//3,4
	}
	public static void dosome(int a, String b, Point10 p, Collection c) {
		a = a + 1;
		b = b + "!";
		p.setX(2);
		p = new Point10(3, 4);
		c.clear();
		c.add(p);
		c = new ArrayList();
		c.add(new Point10(5, 6));
	}
}

收藏助手
不良信息举报
您举报文章:Java_Collection_ArrayList
举报原因:
原因补充:

(最多只允许输入30个字)