zoukankan      html  css  js  c++  java
  • iOS

    前言

    	public class NSEnumerator : NSObject, NSFastEnumeration
    

    1、迭代器

    	let arr:NSArray = ["bei", "jing", "huan", "ying", "nin"]
    	let dic:NSDictionary = ["key1":"value1", "key2":"value2", "key3":"value3"]
    	    
    	// 创建数组 正序 迭代器
    	let arrEnumer1:NSEnumerator = arr.objectEnumerator()
    	    
    	// 创建数组 反序 迭代器
    	let arrEnumer2:NSEnumerator = arr.reverseObjectEnumerator()
    	    
    	// 创建字典 key 迭代器
    	let dicKeyEnumer:NSEnumerator = dic.keyEnumerator()
    	  	
    	// 创建字典 对象 迭代器
    	let dicObjEnumer:NSEnumerator = dic.objectEnumerator()
    	  	
    	// 获取迭代器中下一个对象
    	var obj: AnyObject? = arrEnumer1.nextObject()
    	  	
    	obj = arrEnumer1.nextObject()
    	  	
    	// 获取迭代器中所有对象
    	let array = arrEnumer2.allObjects
    

    2、数组用迭代器遍历

    	let arr:NSArray = ["bei", "jing", "huan", "ying", "ni"]
    	    
    	let enu1:NSEnumerator = arr.objectEnumerator()
    	let enu2:NSEnumerator = arr.reverseObjectEnumerator()
    	    
    	// AnyObject 后不要加 ?,否则会导致一直循环
    	while let obj:AnyObject = enu1.nextObject() {
    	    
    		print(obj)
    	}
    	    
    	// AnyObject 后不要加 ?,否则会导致一直循环
    	while let obj:AnyObject = enu2.nextObject() {
    	    
    		print(obj)
    	}
    

    3、集合用迭代器遍历

    	let nsSet:NSSet = [2, 4, 6, 8]
    	    
    	let enu:NSEnumerator = nsSet.objectEnumerator()
    	    
    	// AnyObject 后不要加 ?,否则会导致一直循环
    	while let obj:AnyObject = enu.nextObject() {
    	    
    		print(obj)
    	}
    

    4、字典用迭代器遍历

    	let nsDic:NSDictionary = NSDictionary(dictionary: ["key1":1, "key2":2, "key3":3, "key4":4])
    	    
    	// key 迭代器
    	let keyEnu:NSEnumerator = nsDic.keyEnumerator()
    	    
    	while let key:AnyObject = keyEnu.nextObject() {
    	    
    		print(nsDic.objectForKey(key))
    	}
    	    
    	// 对象迭代器
    	let objEnu:NSEnumerator = nsDic.objectEnumerator()
    	    
    	while let obj:AnyObject = objEnu.nextObject() {
    	    
    		print(obj)
    	}
    
  • 相关阅读:
    Mvc4.0添加商品到Cookie
    个人作业——词频统计
    利用飞信虚拟框架开发绿色.NET程序
    专用服务器和共享服务器的区别(转)
    我做项目对Excel进程处理问题
    通过SQL Server 2000的链接服务器访问Sybase数据库
    结合地理信息系统开发的项目
    模仿Smartphone的开始菜单效果
    如何修改Windows Mobile手机系统颜色
    个人负责的第一个地图应用项目框架截图
  • 原文地址:https://www.cnblogs.com/QianChia/p/5777471.html
Copyright © 2011-2022 走看看