Swift - enumerateObjectsUsingBlock的用法

enumerateobjectsusingblock:不是Array的方法在NSArray使用。如果你想使用它,你需要一个实例NSArray而不是Array。

import Foundation

var array: NSArray = ["Some", "strings", "in", "an", "array"]

array.enumerateObjectsUsingBlock({ object, index, stop in
    //your code
})

如果你有一个现有的array,使用as能让Array变成一个NSArray

var cocoaArray = swiftArray as NSArray

或者你只是import Foundation编译器会自动桥接Array变成NSArray然后NSArray方法将变得可用。

Swift1

你可以只使用Swift的enumerate功能:

for (index, value) in enumerate(array) {
    // your code
}

Swift2

swift2,enumerate不再是一个自由的功能,现在它在一个协议的扩展!

for (index, value) in array.enumerate() {
    // your code
}
Swift3

在swift3,enumerate更名为enumerated

for (index, value) in array.enumerated() {
    // your code
}
 
时间: 2024-08-28 13:11:25

Swift - enumerateObjectsUsingBlock的用法的相关文章

swift中Optional用法以及常问问题

很多同学问Optional中?和 !区别,弄清这个问题我们首先了解一下swift中Optional语法 Swift语言使用var定义变量,但和别的语言不同,Swift里不会自动给变量赋初始值,也就是说变量不会有默认值,所以要求使用变量之前必须要对其初始化.如果在使用变量之前不进行初始化就会报错: var stringValue : String  //error: variable 'stringValue' used before being initialized //let hashVal

Swift继承的用法

一个类可以继承另一个类的方法,属性和其它特性.当一个类继承其它类,继承类叫子类,被继承类叫超类(或父类).在Swift中,继承是区分「类」与其它类型的一个基本特征. 在Swift中,类可以调用和访问超类的方法,属性和下标,并且可以重写(override)这些方法,属性和下标来优化或修改它们的行为.Swift会检查你的重写定义在超类中是否有匹配的定义,以此确保你的重写行为是正确的. 可 以为类中继承来的属性添加属性观察器(property observer),这样一来,当属性值改变时,类就会被通知

swift - UIAlertController 的用法

ios 8 以后苹果官方建议使用UIAlertController这个类,所以专门去网上找资料,了解了下用法,自己写个代码,记录一下! 感谢航哥,转自:http://www.hangge.com/blog/cache/detail_651.html 1.创建一个alertView override func viewDidAppear(animated: Bool){ super.viewDidAppear(animated) let alertController = UIAlertContr

swift - UISegmentedControl 的用法

一.创建控件,并监听控件选择值 /*选项除了文字还可以是图片 as关键字的作用就是字面意思:类型转换*/ // let items = ["选项一","选项二",UIImage(named:"hgl.jpeg")!] as [AnyObject] let items = ["选项一","选项二"] let segmented = UISegmentedControl(items:items) // segm

swift - UIProgressView的用法

1.创建进度条 progressView.frame = CGRectMake(50, 80, SCREEN_WIDTH - 100, 30) progressView.progressViewStyle = UIProgressViewStyle.Default progressView.center = self.view.cente. progressView.progress = 0.5 //默认进度50% self.view.addSubview(progressView) 2.设置进

swift - UITextField 的用法

1,文本框的创建,有如下几个样式: UITextBorderStyle.None:无边框 UITextBorderStyle.Line:直线边框 UITextBorderStyle.RoundedRect:圆角矩形边框 UITextBorderStyle.Bezel:边线+阴影 1 2 3 4 let textField = UITextField(frame: CGRectMake(10,160,200,30)) //设置边框样式为圆角矩形 textField.borderStyle = UI

String的用法总结-swift

学习swift的String用法总结 学习了swift的String的用法之后感觉比OC的太直接了,不需要直接的初始化.类型声明也不用区分可变和不可变的类型,基本上就是属于哪里需要就在哪里直接写就可以的状态 override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. print("viewDidLoad"

Swift基础:创建第一个Swift工程:Swift的基本语法

苹果公司在今年的WWDC大会上,除了发布了iOS8和Max OS X 10.10之外,还发布了一个新的编程语言Swift.不得不说,Swift有较大的转变,也使编程变得更加容易了,下面介绍了Swift的常量和变量的定义,基本控制语句的使用: 需要注意的是:Swift只能在Xcode 6 Beta版中运行,Xcode 6 目前最新的是Beta 7,大家可以通过以下链接下载: http://adcdownload.apple.com//Developer_Tools/xcode_6_beta_7_a

Swift开发教程--Swift的基本语法

下面来介绍Swift的基本用法: println("Hello, World!") println("你好,世界!") // 定义一个常量,使用关键字"let" // 在Swift中,几乎对所有的基本数据类型或者是对象类型使用结构体进行了重写 let haiDian = "海淀" // let haiDian: String = "海淀"        // 在Swift中,系统会帮你做类型推断,上一行的代