Java之Collection详解

Collection借口是java集合框架的最顶层接口,它提供了大量的通用的集合操纵方法。collection接口是Sort接口和List接口的父接口。

1.添加元素

add以及addAll

package test;

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

public class CollectionDemo {
	public static void main(String args[]) {
		Collection c = new ArrayList();  //创建集合对象
		//add
		c.add("I");
		c.add("LOVE");
		c.add("YOU");
		System.out.println(c);
		
		
		//addAll 把一个集合的元素添加到另一个集合中
		Collection c2 = new ArrayList();
		c2.add("AND");
		c2.add("YOU");
		c.addAll(c2);  //把c2中的元素添加到c集合中
		System.out.println(c);
		
	}

}

运行结果:

[I, LOVE, YOU]

[I, LOVE, YOU, AND, YOU]

2.删除方法

(a)clear()清空集合中的元素

package test;

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

public class CollectionDemo {
	public static void main(String args[]) {
		Collection c = new ArrayList();  //创建集合对象
		//add
		c.add("I");
		c.add("LOVE");
		c.add("YOU");
		System.out.println(c);
		
		
		//addAll 把一个集合的元素添加到另一个集合中
		Collection c2 = new ArrayList();
		c2.add("AND");
		c2.add("YOU");
		c.addAll(c2);  //把c2中的元素添加到c集合中
		System.out.println(c);
		
		//clear()清空集合中的元素
		c.clear();
		System.out.println(c);
	}

}

运行结果:

[I, LOVE, YOU]
[I, LOVE, YOU, AND, YOU]
[]

(b)remove()指定集合中的元素删除,删除成功返回true,删除失败返回false。

package test;

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

public class CollectionDemo {
	public static void main(String args[]) {
		Collection c = new ArrayList();  //创建集合对象
		//add
		c.add("I");
		c.add("LOVE");
		c.add("YOU");
		System.out.println(c);
		
		
		//addAll 把一个集合的元素添加到另一个集合中
		Collection c2 = new ArrayList();
		c2.add("AND");
		c2.add("YOU");
		c.addAll(c2);  //把c2中的元素添加到c集合中
		System.out.println(c);
		
		//remove()
		c.remove("AND");
		System.out.println(c);
	}

}

运行结果:

[I, LOVE, YOU]
[I, LOVE, YOU, AND, YOU]
[I, LOVE, YOU, YOU]

(c)removeAll()删除集合中与removeAll括号中交集的元素。

package test;

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

public class CollectionDemo {
	public static void main(String args[]) {
		Collection c = new ArrayList();  //创建集合对象
		//add
		c.add("I");
		c.add("LOVE");
		c.add("YOU");
		System.out.println(c);
		
		
		//addAll 把一个集合的元素添加到另一个集合中
		Collection c2 = new ArrayList();
		c2.add("AND");
		c2.add("YOU");
		c.addAll(c2);  //把c2中的元素添加到c集合中
		System.out.println(c);
		
		//removeAll()
		c.removeAll(c2);
		System.out.println(c);
	}

}

运行结果:

[I, LOVE, YOU]
[I, LOVE, YOU, AND, YOU]
[I, LOVE]

(d)retainAll()与removeAll正好相反,保留集合中与retainAll()括号中交集的元素,其他元素一并删除。

package test;

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

public class CollectionDemo {
	public static void main(String args[]) {
		Collection c = new ArrayList();  //创建集合对象
		//add
		c.add("I");
		c.add("LOVE");
		c.add("YOU");
		System.out.println(c);
		
		
		//addAll 把一个集合的元素添加到另一个集合中
		Collection c2 = new ArrayList();
		c2.add("AND");
		c2.add("YOU");
		c.addAll(c2);  //把c2中的元素添加到c集合中
		System.out.println(c);
		
		//retainAll()
		c.retainAll(c2);
		System.out.println(c);
	}

}

运行结果:

[I, LOVE, YOU]

[I, LOVE, YOU, AND, YOU]

[YOU, AND, YOU]


3.查看集合的元素个数

size()

package test;

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

public class CollectionDemo {
	public static void main(String args[]) {
		Collection c = new ArrayList();  //创建集合对象
		//add
		c.add("I");
		c.add("LOVE");
		c.add("YOU");
		System.out.println(c);
		
		
		//addAll 把一个集合的元素添加到另一个集合中
		Collection c2 = new ArrayList();
		c2.add("AND");
		c2.add("YOU");
		c.addAll(c2);  //把c2中的元素添加到c集合中
		System.out.println(c);
		
		//size()
		System.out.println("集合里一共有"+ c.size() + "个元素");
	}

}

运行结果:

[I, LOVE, YOU]
[I, LOVE, YOU, AND, YOU]
集合里一共有5个元素

4.判断

(a)isEmpty判断集合是否为空元素

package test;

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

public class CollectionDemo {
	public static void main(String args[]) {
		Collection c = new ArrayList();  //创建集合对象
		//add
		c.add("I");
		c.add("LOVE");
		c.add("YOU");
		
		//isEmpty
		System.out.println("判断集合是否为空元素:" + c.isEmpty());
	}

}

运行结果:判断集合是否为空元素:false

(b)contains判断集合中是否存在指定元素

package test;

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

public class CollectionDemo {
	public static void main(String args[]) {
		Collection c = new ArrayList();  //创建集合对象
		//add
		c.add("I");
		c.add("LOVE");
		c.add("YOU");
		
		//contains
		System.out.println("断集合中是否存在指定元素:" + c.contains("I"));
		System.out.println("断集合中是否存在指定元素:" + c.contains("SSS"));
	}

}

运行结果:

断集合中是否存在指定元素:true

断集合中是否存在指定元素:false


(c)containsAll如果此集合包含指定集合中的所有元素返回true,否则返回false。

package test;

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

public class CollectionDemo {
	public static void main(String args[]) {
		Collection c = new ArrayList();
		c.add("我");
		c.add("喜欢");
		c.add("你");
		System.out.println(c);
		Collection c2 = new ArrayList();
		c2.add("喜欢");
		System.out.println("c集合包含c2集合中的所有元素吗:" + c.containsAll(c2));
		c2.add("棒棒糖");
		System.out.println("c集合包含c2集合中的所有元素吗:" + c.containsAll(c2));
		
	}
}

运行结果:

[我, 喜欢, 你]
c集合包含c2集合中的所有元素吗:true
c集合包含c2集合中的所有元素吗:false


5.迭代

(a)toArry()返回集合中所有元素的数组

package test;

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

public class CollectionDemo {
	public static void main(String args[]) {
		Collection c = new ArrayList();
		c.add("我");
		c.add("喜欢");
		c.add("你");
		Object[] arr = c.toArray();
		System.out.println(Arrays.toString(arr));
		
		
	}
}

运行结果:[我, 喜欢, 你]

(b)interator

     (1) 使用方法iterator()要求容器返回一个Iterator。第一次调用Iterator的next()方法时,它返回序列的第一个元素。注意:iterator()方法是java.lang.Iterable接口,被Collection继承。

  (2) 使用next()获得序列中的下一个元素。

  (3) 使用hasNext()检查序列中是否还有元素。

  (4) 使用remove()将迭代器新返回的元素删除。

package test;

import java.util.*;


public class CollectionDemo {
	public static void main(String args[]) {
		Collection c = new ArrayList();
		c.add("apple");
		c.add("orange");
		c.add("ice green");
		c.add("chicken");
		
		Iterator it = c.iterator();
		while (it.hasNext()) {
			System.out.println(it.next());
			
		}
	}
	

}
















评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值