集合框架(增加,删除,判断元素以及迭代器)

原创 2015年11月18日 21:43:02
/*
 1、add方法的参数类型是Object,以便于接收任意类型对象。
 2、集合中存储的都是对象的引用(地址)
 
 迭代器其实就是集合取出元素的方式
 把取出方式定义在集合内部,这样取出方式就可以直接访问集合内部元素。
 那么取出方式也就被定义成了内部类。
  而每一个容器的数据结构不同,所以取出的动作细节也不一样,但是都具有共性内容。
  
  那么这些内部类都符合一个规则,该规则是Iterator。
  通过一个对外提供的方法iterator()获取集合的取出对象。
 */
import java.util.ArrayList;
import java.util.Iterator;

public class CollectionDemo {
	public static void main(String[] args) {
		base_method();
		System.out.println();
		base_method2();
		System.out.println();
		method_get();
	}
	public static <E> void method_get(){
		ArrayList al=new ArrayList();
		
		al.add("java01");
		al.add("java02");
		al.add("java03");
		al.add("java04");
		/*
		Iterator<E> it=al.iterator(); //获取迭代器,用于取出集合中的元素
		while(it.hasNext())  //如果有元素就返回true
		{
			sop(it.next());
		}*/
		//另一种方式
		for(Iterator it=al.iterator();it.hasNext();)
		{
			sop(it.next());
		}
	}
	public static void base_method2()
	{
		ArrayList al1=new ArrayList();
		
		al1.add("java01");
		al1.add("java02");
		al1.add("java03");
		al1.add("java04");
		ArrayList al2=new ArrayList();
		
		al2.add("java01");
		al2.add("java02");
		al2.add("java05");
		al2.add("java06");
		
		//al1.retainAll(al2); //取交集,al1中只会保留与al2中相同的内容,即交集存放在al1中
		al1.removeAll(al2);  //去除al1中与al2中相同的元素,也就是保留al1中独有的元素
		sop("al1:"+al1);
		sop("al2"+al2);
	}
	public static void base_method(){
		//创建一个集合容器,使用Collection接口的子类。ArrayList
		ArrayList al=new ArrayList();
		
		//1、添加元素
		al.add("java01");
		al.add("java02");
		al.add("java03");
		al.add("java04");
		
		//打印集合
		sop("原集合为:"+al); //元素会自动放到一个[]内
		
		//2、获取个数,集合长度
		sop("集合的长度为:"+al.size());
		
		//3、删除元素
		al.remove("java02");
		//al.clear();  //清空集合
		sop("删除元素后的集合为:"+al);
		
		//4、判断元素
		sop("java03是否存在:"+al.contains("java03"));
		sop("集合是否为空:"+al.isEmpty());
	}
	public static void sop(Object obj){
		System.out.println(obj);
	}
}


结果图:

之前学java的时候,貌似一点也没接触过集合,感觉有点陌生。

版权声明:本文为博主原创文章,如需转载请注明出处。

jquery 设置内容和属性 元素添加和删除

设置文本样式 $("#btn1").click(function(){ $("#test1").text("Hello world!"); }); $("#btn2").click(functio...
  • weitao_11
  • weitao_11
  • 2015年09月07日 19:11
  • 2008

jquery增加与删除元素

append()              向每个匹配的元素内部追加内容                                          HTML代码:            这是...
  • angleretar
  • angleretar
  • 2013年05月19日 15:07
  • 552

Matlab 中 how 删除数组元素、追加一个行/列 向量、求矩阵大小

matlab 小笔记
  • kuailexiaoziwqx
  • kuailexiaoziwqx
  • 2016年11月16日 16:28
  • 2208

数组元素删除与排序

2.1 向highArray.java程序(清单2.3)的HighArray类添加一个名为getMax()的方法,它返回 数组中最大关键字的值,当数组为空时返回-1。向main()中添加一些代码来使用...
  • ssdut2013
  • ssdut2013
  • 2016年02月25日 14:40
  • 562

PHP增加和删除数组元素(模仿堆栈和队列)

有时候我们需要扩展一个数组,或者删掉数组的一部分,PHP为扩展和缩小数组提供了一些函数。对于那些希望模仿各种队列实现(FIFO、LIFO)的程序员来说,这些函数可以提供便利。顾名思义,从这些函数的函数...
  • LHN_hpu
  • LHN_hpu
  • 2016年09月14日 11:04
  • 347

跳表的实现插入删除搜索算法详解

跳表久闻其名,以前写过AVL树,红黑树,都是平衡结构。但是跳表呢,它不是树形结构,它是通过链表实现的。 我们知道,在链表中查找一个元素的时间复杂度是O(n)。 在一个有序链表中,我们如果在链表中部额外...
  • FreeeLinux
  • FreeeLinux
  • 2016年11月10日 13:51
  • 439

javascript 数组、json元素的添加删除

javasscript删除数组的3种方法 1,用shift()方法 shift:删除原数组第一项,并返回删除元素的值;如果数组为空则返回undefined var chaom...
  • l30961171
  • l30961171
  • 2013年02月21日 10:21
  • 15740

swift-字典NSDictionary的定义,修改键值,删除/添加键值

swift基本用法-字典NSDictionary的定义,修改键值,删除/添加键值
  • dylan_lwb_
  • dylan_lwb_
  • 2014年10月20日 09:17
  • 5815

AngularJS表格数据全选反选批量删除,删除的数据添加到数组里

var app = angular.module("myApp",[]);             app.controller("myCtrl",function($scope){       ...
  • thw_m
  • thw_m
  • 2017年10月24日 16:10
  • 187

PHP 增加与删除数组元素

在php中删除数组指定元素的函数没有直接能使用的,多数只能封装方法 例如array_slice() 函数在数组中根据条件取出一段值,并返回. array_slice(array,offset,le...
  • u011125949
  • u011125949
  • 2014年04月09日 15:01
  • 516
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:集合框架(增加,删除,判断元素以及迭代器)
举报原因:
原因补充:

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