官方专题提供官方的最新资讯内容,帮你更好的了解官方。
import Foundation //类和结构体是人们构建代码所用的一种通用且灵活的构造体。我们可以使用完全相同的语法规则来为类和结构体定义属性(常量、变量)和添加方法,从而扩展类和结构体的功能。 //与其他编程语言所不同的是,Swift 并不要求你为自定义类和结构去创建独立的接口和实现文件。你所要做的是在 一个单一文件中定义一个类或者结构体,系统将会自动生成面向其它代码的外部接口。 //注意:
import Foundation /*存储属性************************************************************/ //一个存储属性就是存储在特定类或结构体的实例里的一个常量或变量。 //下面的例子定义了一个名为 FixedLengthRange 的结构体,它描述了一个在创建后无法修改值域宽度的区间: struct FixedLengthRa
import Foundation //方法是与某些特定类型相关联的函数。类、结构体、枚举都可以定义实例方法;实例方法为给定类型的实例封装 了具体的任务与功能。类、结构体、枚举也可以定义类型方法;类型方法与类型本身相关联。类型方法与 Objecti ve-C 中的类方法(class methods)相似。 /*实例方法****************************************
import Foundation //用下标脚本访问一个数组(Array)实例中的元素可以这样写 so meArray[index] ,访问字典(Dictionary)实例中的元素可以这样写 someDictionary[key] 。 /*下标脚本语法******************************************************/ //下标脚本允许你通过在实例后面的
import Foundation /*定义一个基类*****************************************************/ //不继承于其它类的类,称之为基类 //Swift 中的类并不是从一个通用的基类继承而来。如果你不为你定义的类指定一个超类的话,这个类就自动成为 基类。 //下面的例子定义了一个叫 Vehicle 的基类。这个基类声明了一个名为 curr
import Foundation //构造过程是为了使用某个类、结构体或枚举类型的实例而进行的准备过程。这个过程包含了为实例中的每个存储型属性设置初始值和为其执行必要的准备和初始化任务。 //构造过程是通过定义构造器( Initializers )来实现的,这些构造器可以看做是用来创建特定类型实例的特殊方法。与 Objective-C 中的构造器不同,Swift 的构造器无需返回值,它们的主要任
import Foundation /*析构过程原理******************************************************/ //Swift 会自动释放不再需要的实例以释放资源。如自动引用计数章节中所讲述,Swift 通过自动引用计数(ARC) 处理实例的内存管理。通常当你的实例被释放时不需要手动地去清理。但是,当使用自己的资源时,你可能 需要进行一些额外的清
(点击上方公众号,可快速关注我们) 英文: swift 中文:星夜暮晨(@星夜暮晨 ) 链接:http://www.jianshu.com/p/b69d9b615ee5 注:与《Swift 3 API 设计准则》的区别在于,那片文章只是一个概览说明,此文章是苹果官方发布的 API 设计准则,虽然还处于样稿阶段,但是有一定的参考价值。 注意:本 API 指南是 Swift 3.0 工作的一部分,还只
import Foundation /*自动引用计数的工作机制********************************************/ //当你每次创建一个类的新的实例的时候,ARC 会分配一大块内存用来储存实例的信息。内存中会包含实例的类型 信息,以及这个实例所有相关属性的值。 //为了确保使用中的实例不会被销毁,ARC 会跟踪和计算每一个实例正在被多少属性,常量和变量所引用。
import Foundation /*定义一个类层次作为例子******************************************************/ //第一个代码片段定义了一个新的基础类 MediaItem 。这个类为任何出现在数字媒体库的媒体项提供基础功能 class MediaItem {     var name: String     init(name: Str
import Foundation /*嵌套类型实例***********************************************/ //下面这个例子定义了一个结构体 BlackjackCard (二十一点),用来模拟 BlackjackCard 中的扑克牌点数。jackCard 结构体包含2个嵌套定义的枚举类型 Suit 和 Rank 。 struct BlackjackCard
import Foundation //Swift 中的扩展可以: //? 添加计算型属性和计算型静态属性  //? 定义实例方法和类型方法 //? 提供新的构造器 //? 定义下标 //? 定义和使用新的嵌套类型 //? 使一个已有类型符合某个协议 /*扩展语法**************************************************************/ //声明
import Foundation /*协议的语法********************************************************/ //protocol SomeProtocol { //    // 协议内容 //} //struct SomeStructure: FirstProtocol, AnotherProtocol { //    // 结构体内容 /
import Foundation /*泛型所解决的问题*****************************************************/ //这里是一个标准的,非泛型函数 swapTwoInts ,用来交换两个Int值: func swapTwoInts(inout a: Int, inout _ b: Int) {     let temporaryA = a    
import Foundation /*模块和源文件**************************************************************/ //模块指的是以独立单元构建和发布的 Framework 或 Application 。在Swift 中的一个模块可以使用 import 关键 字引入另外一个模块。 /*访问级别*********************
import Foundation /*位运算符***********************************************/ //按位取反运算符 //按位取反运算符( ~ ) 可以对一个数值的全部位进行取反: //按位取反操作符是一个前置运算符,需要直接放在操作数的之前,并且它们之间不能添加任何空格。 let initialBits: UInt8 = 0b00001111 le
import Foundation /*如何阅读语法***********************************************/ //? 箭头(→)用来标记语法产式,可以理解为“可以包含”。 //? 斜体文字用来表示句法分类,并出现在一个语法产式规则两侧。 //? 义词和标点符号由粗体固定宽度的文本标记,而且只出现在一个语法产式规则的右侧。 //? 选择性的语法产式由竖线(|)
import Foundation /*类型注解**************************************************/ let someTuple: (Double, Double) = (3.14159,2.71828) func someFunction(a: Int){/*...*/} //在第一个例子中,表达式 someTuple 的类型被指定为 (Doub
import Foundation //Swift 中存在四种表达式: 前缀(prefix)表达式,二元(binary)表达式,主要(primary)表达式和后缀(po stfix)表达式。表达式可以返回一个值,以及运行某些逻辑(causes a side effect) /*前缀表达式***********************************************/ //前缀表达式
import Foundation /*通配符模式********************************************/ //通配符模式由一个下划线(_)构成,且匹配并忽略任何值。当你不在乎被匹配的值时可以使用该模式。例如,下 面这段代码在闭区间 1...3 中循环,每次循环时忽略该区间内的当前值: for _ in 1...3 {     // Do something th