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

Java的集合、Iterator迭代器

时间:2018-10-08 23:13:59      阅读:216      评论:0      收藏:0      [点我收藏+]

标签:add   允许   没有   col   demo   转型   .com   数组   set   

集合

集合是java中提供的一种容器,可以用来存储多个数据。而且集合的长度是可变的。集合中存储的元素必须是引用类型数据(ArrayList)

ArrayList类发现它继承了抽象类AbstractList同时实现接口List,而List接口又继承了Collection接口。Collection接口为最顶层集合接口

技术分享图片

List接口允许重复的有序排列,Set接口不允许重复并且是无序排列

Collection基本用法

public class Demo {
	public static void main(String[] args) {
		Collection<String> col = new ArrayList<String>();
		col.add("你好");
		col.add("双十一");
		col.add("买买买");
		Object obj = col.remove("1");  //移除col集合中的1并返回一个布尔值
		System.out.println(obj);
		System.out.println(col.contains("双十一"));  //如果col包含此元素,返回一个布尔值
		ArrayList<String> list = (ArrayList<String>) col;  //向下转型
		for (int i = 0; i < list.size(); i++) {
			System.out.println(list.get(i));
		}
	}
}

  技术分享图片

Object[] obj1 = col.toArray();//返回一个数组
		for (int i = 0; i < obj1.length; i++) {
			System.out.println(obj1[i]);
		}

  往集合中添加对象元素。add方法,创建集合时所指定的数据类型如<String>,那么,添加的是String类型;创建集合时若没有指定数据类型,那么,Object类型。

public static void main(String[] args) {
        //Collection也可以不写范型
        Collection col = new  ArrayList();
        col.add("abc");
        col.add(123);
        col.add(12.3);
        //ArrayList 也可以不写范型
        ArrayList   list = (ArrayList)col;
        for(int i = 0;i < list.size();i++){
            if(list.get(i) instanceof String){
                System.out.println(list.get(i));
            } 
            if(list.get(i) instanceof Integer){
                System.out.println(list.get(i));
            } 
        }    
    }

  技术分享图片

Iterator迭代器

在取元素之前先要判断集合中有没有元素,如果有,就把这个元素取出来,继续在判断,如果还有就再取出出来。一直把集合中的所有元素全部取出。这种取出方式专业术语称为迭代。

public static void main(String[] args) {
//		迭代器
		Collection<String>col = new ArrayList<String>();
		col.add("123");		
		col.add("abc");
		Iterator<String>it = col.iterator();
		System.out.println(it.hasNext());
		System.out.println(it.next());
		System.out.println(it.hasNext());
		System.out.println(it.next());
		System.out.println(it.hasNext());
	}

  技术分享图片

技术分享图片

Java的集合、Iterator迭代器

标签:add   允许   没有   col   demo   转型   .com   数组   set   

原文地址:https://www.cnblogs.com/cgj1994/p/9757666.html

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