Swift 翻译
文章平均质量分 79
zpf8861
这个作者很懒,什么都没留下…
展开
-
Swift编程语言学习3.2——字典
字典字典是一种存储相同类型多重数据的存储器。每个值(value)都关联独特的键(key),键作为字典中的这个值数据的标识符。和数组中的数据项不同,字典中的数据项并没有具体顺序。我们在需要通过标识符(键)访问数据的时候使用字典,这种方法很大程度上和我们在现实世界中使用字典查字义的方法一样。 Swift 的字典使用时需要具体规定可以存储键和值类型。不同于 Objective-C 的NSDi翻译 2014-07-11 20:02:51 · 1075 阅读 · 0 评论 -
Swift编程语言学习4.3—— 控制语句
控制传递语句(Control Transfer Statements)控制转移语句改变你代码的执行顺序,通过它你可以实现代码的跳转。Swift有四种控制转移语句。 continuebreakfallthroughreturn我们将会在下面讨论continue、break和fallthrough语句。return语句将会在函数章节讨论。 Continue翻译 2014-07-14 11:00:47 · 1166 阅读 · 0 评论 -
Swift 编程语言的析构过程
在一个类的实例被释放之前,析构函数被立即调用。用关键字deinit来标示析构函数,类似于初始化函数用init来标示。析构函数只适用于类类型。 析构过程原理Swift 会自动释放不再需要的实例以释放资源。如自动引用计数那一章描述,Swift 通过自动引用计数(ARC)处理实例的内存管理。通常当你的实例被释放时不需要手动地去清理。但是,当使用自己的资源时,你可能需要进行一些额外的清理原创 2014-08-07 08:38:49 · 1090 阅读 · 0 评论 -
Swift 的类、结构体、枚举等的构造过程Initialization(下)
类的继承和构造过程类里面的所有存储型属性--包括所有继承自父类的属性--都必须在构造过程中设置初始值。 Swift 提供了两种类型的类构造器来确保所有类实例中存储型属性都能获得初始值,它们分别是指定构造器和便利构造器。 指定构造器和便利构造器指定构造器是类中最主要的构造器。一个指定构造器将初始化类中提供的所有属性,并根据父类链往上调用父类的构造器来实现父类的初始化。翻译 2014-08-01 09:14:56 · 1239 阅读 · 1 评论 -
Swift编程语言学习5—— 函数
函数是用来完成特定任务的独立的代码块。你给一个函数起一个合适的名字,用来标示函数做什么,并且当函数需要执行的时候,这个名字会被“调用”。 Swift 统一的函数语法足够灵活,可以用来表示任何函数,包括从最简单的没有参数名字的 C 风格函数,到复杂的带局部和外部参数名的 Objective-C 风格函数。参数可以提供默认值,以简化函数调用。参数也可以即当做传入参数,也当做传出参数,也翻译 2014-07-15 09:17:12 · 1730 阅读 · 0 评论 -
Swift编程语言学习9—— 存储属性和计算属性
属性将值跟特定的类、结构或枚举关联。存储属性存储常量或变量作为实例的一部分,计算属性计算(而不是存储)一个值。计算属性可以用于类、结构体和枚举里,存储属性只能用于类和结构体。 存储属性和计算属性通常用于特定类型的实例,但是,属性也可以直接用于类型本身,这种属性称为类型属性。 另外,还可以定义属性监视器来监控属性值的变化,以此来触发一个自定义的操作。属性监视器可以添加到自己写的存储属翻译 2014-07-22 09:09:52 · 1492 阅读 · 0 评论 -
Swift编程语言学习10—— 枚举属性监视器
属性监视器属性监视器监控和响应属性值的变化,每次属性被设置值的时候都会调用属性监视器,甚至新的值和现在的值相同的时候也不例外。 可以为除了延迟存储属性之外的其他存储属性添加属性监视器,也可以通过重载属性的方式为继承的属性(包括存储属性和计算属性)添加属性监视器。属性重载请参考继承一章的重载。 注意: 不需要为无法重载的计算属性添加属性监视器,因为可以通过 setter翻译 2014-07-22 09:13:34 · 1072 阅读 · 0 评论 -
Swift编程语言学习12 ——实例方法(Instance Methods)和类型方法(Type Methods)
方法是与某些特定类型相关联的函数。类、结构体、枚举都可以定义实例方法;实例方法为给定类型的实例封装了具体的任务与功能。类、结构体、枚举也可以定义类型方法;类型方法与类型本身相关联。类型方法与 Objective-C 中的类方法(class methods)相似。 结构体和枚举能够定义方法是 Swift 与 C/Objective-C 的主要区别之一。在 Objective-C 中,类是唯一翻译 2014-07-25 08:51:58 · 2229 阅读 · 0 评论 -
Swift编程语言学习13——附属脚本(Subscripts)
附属脚本可以定义在类(Class)、结构体(structure)和枚举(enumeration)这些目标中,可以认为是访问对象、集合或序列的快捷方式,不需要再调用实例的特定的赋值和访问方法。举例来说,用附属脚本访问一个数组(Array)实例中的元素可以这样写 someArray[index] ,访问字典(Dictionary)实例中的元素可以这样写 someDictionary[key]。翻译 2014-07-28 08:52:44 · 1369 阅读 · 0 评论 -
Swift编程语言学习14——Swift中如何使用继承(Inheritance)
一个类可以继承(inherit)另一个类的方法(methods),属性(property)和其它特性。当一个类继承其它类时,继承类叫子类(subclass),被继承类叫超类(或父类,superclass)。在 Swift 中,继承是区分「类」与其它类型的一个基本特征。 在 Swift 中,类可以调用和访问超类的方法,属性和附属脚本(subscripts),并且可以重写(override)这翻译 2014-07-28 08:56:31 · 1087 阅读 · 0 评论 -
Swift编程语言学习7—— 枚举
枚举定义了一个通用类型的一组相关的值,使你可以在你的代码中以一个安全的方式来使用这些值。 如果你熟悉 C 语言,你就会知道,在 C 语言中枚举指定相关名称为一组整型值。Swift 中的枚举更加灵活,不必给每一个枚举成员提供一个值。如果一个值(被认为是“原始”值)被提供给每个枚举成员,则该值可以是一个字符串,一个字符,或是一个整型值或浮点值。 此外,枚举成员可以指定任何类型的实例值存翻译 2014-07-18 08:42:52 · 1083 阅读 · 0 评论 -
《Swift Programming Language 》——可选链(Optional Chaining)
可选链(Optional Chaining)是一种可以请求和调用属性、方法及子脚本的过程,它的自判断性体现于请求或调用的目标当前可能为空(nil)。如果自判断的目标有值,那么调用就会成功;相反,如果选择的目标为空(nil),则这种调用将返回空(nil)。多次请求或调用可以被链接在一起形成一个链,如果任何一个节点为空(nil)将导致整个链失效。 注意: Swift 的自判断链和 Object翻译 2014-08-15 09:03:00 · 1317 阅读 · 0 评论 -
Swift编程语言学习6—— 闭包
闭包是自包含的函数代码块,可以在代码中被传递和使用。 Swift 中的闭包与 C 和 Objective-C 中的代码块(blocks)以及其他一些编程语言中的 lambdas 函数比较相似。 闭包可以捕获和存储其所在上下文中任意常量和变量的引用。这就是所谓的闭合并包裹着这些常量和变量,俗称闭包。Swift 会为您管理在捕获过程中涉及到的所有内存操作。 注意: 如果您不熟悉翻译 2014-07-16 09:40:54 · 1362 阅读 · 0 评论 -
Swift编程语言学习11—— 枚举全局变量、局部变量与类型属性
全局变量和局部变量计算属性和属性监视器所描述的模式也可以用于全局变量和局部变量,全局变量是在函数、方法、闭包或任何类型之外定义的变量,局部变量是在函数、方法或闭包内部定义的变量。 前面章节提到的全局或局部变量都属于存储型变量,跟存储属性类似,它提供特定类型的存储空间,并允许读取和写入。 另外,在全局或局部范围都可以定义计算型变量和为存储型变量定义监视器,计算型变量跟计算属性一样翻译 2014-07-22 09:17:04 · 3611 阅读 · 1 评论 -
Swift编程语言学习3.1——数组
Swift 语言提供经典的数组和字典两种集合类型来存储集合数据。数组用来按顺序存储相同类型的数据。字典虽然无序存储相同类型数据值但是需要由独有的标识符引用和寻址(就是键值对)。 Swift 语言里的数组和字典中存储的数据值类型必须明确。 这意味着我们不能把不正确的数据类型插入其中。 同时这也说明我们完全可以对获取出的值类型非常自信。 Swift 对显式类型集合的使用确保了我们的代码对工作所翻译 2014-07-11 19:52:19 · 1486 阅读 · 1 评论 -
Swift编程语言学习4.1——循环
Swift提供了类似 C 语言的流程控制结构,包括可以多次执行任务的for和while循环,基于特定条件选择执行不同代码分支的if和switch语句,还有控制流程跳转到其他代码的break和continue语句。 除了 C 语言里面传统的for条件递增(for-condition-increment)循环,Swift 还增加了for-in循环,用来更简单地遍历数组(array),字典(di翻译 2014-07-13 10:53:56 · 1948 阅读 · 0 评论 -
Swift编程语言学习4.2—— 条件语句
条件语句根据特定的条件执行特定的代码通常是十分有用的,例如:当错误发生时,你可能想运行额外的代码;或者,当输入的值太大或太小时,向用户显示一条消息等。要实现这些功能,你就需要使用条件语句。 Swift 提供两种类型的条件语句:if语句和switch语句。通常,当条件较为简单且可能的情况很少时,使用if语句。而switch语句更适用于条件较复杂、可能情况较多且需要用到模式匹配(patte翻译 2014-07-14 10:51:32 · 1531 阅读 · 0 评论 -
Swift编程语言学习8—— 类与结构体
Swift 中类和结构体有很多共同点。共同处在于:• 定义属性用于储存值• 定义方法用于提供功能• 定义下标用于通过下标语法访问值• 定义初始化器用于生成初始化值• 通过扩展以增加默认实现的功能• 符合协议以对某类提供标准功能更多信息请参见属性,方法,下标,初始过程,扩展,和协议。与结构体相比,翻译 2014-07-21 07:26:06 · 1166 阅读 · 0 评论 -
Swift 编程语言学习0.1——Swift简介
采用中英文对照的方式,对《The Swift Programming Language》进行翻译翻译 2014-07-02 09:14:46 · 1313 阅读 · 0 评论 -
Swift编程语言学习1.1——常量与变量
本文针对The Swift Programming Language的翻译整理,介绍常量变量的用法翻译 2014-07-04 09:40:12 · 1123 阅读 · 0 评论 -
Swift编程语言学习1.7——断言
断言可选可以让你判断值是否存在,你可以在代码中优雅地处理值缺失的情况。然而,在某些情况下,如果值缺失或者值并不满足特定的条件,你的代码可能并不需要继续执行。这时,你可以在你的代码中触发一个断言(assertion)来结束代码运行并通过调试来找到值缺失的原因。使用断言进行调试断言会在运行时判断一个逻辑条件是否为true。从字面意思来说,断言“断言”一个条件是否为真。你可以使用断言来保证在翻译 2014-07-08 09:35:51 · 957 阅读 · 0 评论 -
Swift编程语言学习1.4——数值型字面量、数值类型转换
数值型字面量整数字面量可以被写作:一个十进制数,没有前缀一个二进制数,前缀是0b一个八进制数,前缀是0o一个十六进制数,前缀是0x下面的所有整数字面量的十进制值都是17:let decimalInteger = 17let binaryInteger = 0b10001 // 二进制的17let octalInteger = 0o21翻译 2014-07-07 13:14:26 · 1163 阅读 · 0 评论 -
Swift编程语言学习1.2—— 注释、分号、整数、浮点数
注释请将你的代码中的非执行文本注释成提示或者笔记以方便你将来阅读。Swift 的编译器将会在编译代码时自动忽略掉注释部分。Swift 中的注释与C 语言的注释非常相似。单行注释以双正斜杠作(//)为起始标记: // 这是一个注释你也可以进行多行注释,其起始标记为单个正斜杠后跟随一个星号(/*),终止标记为一个星号后跟随单个正斜杠(*/):/* 这是一个,多行注释 */与C翻译 2014-07-07 10:24:20 · 1943 阅读 · 1 评论 -
Swift编程语言学习1.3——类型安全和类型推测
Swift 是一种类型安全(type safe )的语言。类型安全的语言可以让你清楚地知道代码要处理的值的类型。如果你的代码需要一个String,你绝对不可能不小心传进去一个Int。由于 Swift 是类型安全的,所以它会在编译你的代码时进行类型检查(type checks),并把不匹配的类型标记为错误。这可以让你在开发的时候尽早发现并修复错误。当你要处理不同类型的值时,类型检查可以帮你避翻译 2014-07-07 10:42:14 · 1248 阅读 · 0 评论 -
Swift编程语言学习1.6——可选值
可选值使用可选(optionals)来处理值可能缺失的情况。可选表示:有值,等于 x 或者没有值注意:C 和 Objective-C 中并没有可选这个概念。最接近的是 Objective-C 中的一个特性,一个方法要不返回一个对象要不返回nil,nil表示“缺少一个合法的对象”。然而,这只对对象起作用——对于结构体,基本的 C 类型或者枚举类型不起作用。对于这些类型,Objec翻译 2014-07-08 09:32:15 · 1043 阅读 · 0 评论 -
Swift编程语言学习1.5——类型别名、布尔值、元组
类型别名类型别名(type aliases)就是给现有类型定义另一个名字。你可以使用typealias关键字来定义类型别名。当你想要给现有类型起一个更有意义的名字时,类型别名非常有用。假设你正在处理特定长度的外部资源的数据:typealias AudioSample = UInt16定义了一个类型别名之后,你可以在任何使用原始名的地方使用别名:var maxAmplitudeF翻译 2014-07-08 08:55:58 · 1150 阅读 · 0 评论 -
Swift 的类、结构体、枚举等的构造过程Initialization(上)
构造过程是为了使用某个类、结构体或枚举类型的实例而进行的准备过程。这个过程包含了为实例中的每个属性设置初始值和为其执行必要的准备和初始化任务。 构造过程是通过定义构造器(Initializers)来实现的,这些构造器可以看做是用来创建特定类型实例的特殊方法。与 Objective-C 中的构造器不同,Swift 的构造器无需返回值,它们的主要任务是保证新实例在第一次使用前完成正确的初始化。翻译 2014-08-01 09:05:50 · 1125 阅读 · 0 评论 -
Swift编程语言学习2.1——基本运算符(上)
本文分上 下两部分介绍swift语言中的运算符使用,汇总了所有的swift开发文档中的基本运算符翻译 2014-07-10 09:33:23 · 1165 阅读 · 0 评论 -
Swift编程语言学习2.2——基本运算符(下)
本文分上 下两部分介绍swift语言中的运算符使用,汇总了所有的swift开发文档中的基本运算符翻译 2014-07-10 09:43:47 · 1087 阅读 · 0 评论 -
Swift 自动引用计数机制ARC
Swift 使用自动引用计数(ARC)这一机制来跟踪和管理你的应用程序的内存。通常情况下,Swift 的内存管理机制会一直起着作用,你无须自己来考虑内存的管理。ARC 会在类的实例不再被使用时,自动释放其占用的内存。 然而,在少数情况下,ARC 为了能帮助你管理内存,需要更多的关于你的代码之间关系的信息。本章描述了这些情况,并且为你示范怎样启用 ARC 来管理你的应用程序的内存。翻译 2014-08-14 09:17:59 · 1583 阅读 · 0 评论