swift入门 枚举和结构体
2014-06-13 20:54
281 查看
13 June 2014
先来个链接:The Swift Programming
Language 中文版
试验:
写一个函数,试着通过比较他们的原始值(raw value)来对两个Rank进行比较。
在上面的例子中,由于枚举的原始值类型为Int,因此你只需指定第一个原始值就行,其他的原始值会按照顺序依次赋值的。你也可以使用字符串或者浮点数作为枚举的原始类型。
使用toRaw和fromRaw函数在原始值和枚举值之间进行相互转换。
枚举的成员值才是真正的值,而不仅仅是原始值的另外一个写法。事实上,在没有原始值没有实际含义的情况下,你根本不需要提供原始值。
试验:
在Suit(花色)上面添加一个color方法,当黑桃和花子的时候,返回”black“,当红桃和方片的时候,返回"red"
注意上面枚举类型的成员Hearts的两种引用方式:当给hearts赋值的时候,使用枚举成员Suit.Hearts的全名来引用的,因为这个常量没有指定一个准确的类型。在switch语句中,枚举成员是通过.Hearts这种缩写方式引用的。因为self的类型已经知道就是suit了。一旦你知道了枚举的类型之后,就可以使用缩写的形式了。
可以使用struct关键字来定义一个结构体。结构体支持许多和类相同的特性,包括成员方法和构造器。结构体和类最大的不同之处就是:在结构体在你的代码之后来回传递的时候,结构体都被复制了一份,而类传递的只是引用。
试验:
给Card方法添加一个方法,用来创建整服的纸牌。每张纸牌具有不同的花色和大小。
枚举成员的实例可以有实例自己的关联值(Associated values)。同样的枚举成员的各个实例可以有不同的关联值。关联值是在创建的时候提供的。关联值和原始值是不同的:枚举成员的原始值对于不同的实例来说是相同的,原始值是在定义枚举指定的。
例如:
-----来自戴维营教育 holyjoy
先来个链接:The Swift Programming
Language 中文版
http://www.swiftguide.cn/chapter1/02_a_swift_tour.html
可以使用enum关键字来定义一个枚举。像类和其他的命名类型一样,枚举类型也可以有相关的方法。试验:
写一个函数,试着通过比较他们的原始值(raw value)来对两个Rank进行比较。
在上面的例子中,由于枚举的原始值类型为Int,因此你只需指定第一个原始值就行,其他的原始值会按照顺序依次赋值的。你也可以使用字符串或者浮点数作为枚举的原始类型。
使用toRaw和fromRaw函数在原始值和枚举值之间进行相互转换。
枚举的成员值才是真正的值,而不仅仅是原始值的另外一个写法。事实上,在没有原始值没有实际含义的情况下,你根本不需要提供原始值。
试验:
在Suit(花色)上面添加一个color方法,当黑桃和花子的时候,返回”black“,当红桃和方片的时候,返回"red"
注意上面枚举类型的成员Hearts的两种引用方式:当给hearts赋值的时候,使用枚举成员Suit.Hearts的全名来引用的,因为这个常量没有指定一个准确的类型。在switch语句中,枚举成员是通过.Hearts这种缩写方式引用的。因为self的类型已经知道就是suit了。一旦你知道了枚举的类型之后,就可以使用缩写的形式了。
可以使用struct关键字来定义一个结构体。结构体支持许多和类相同的特性,包括成员方法和构造器。结构体和类最大的不同之处就是:在结构体在你的代码之后来回传递的时候,结构体都被复制了一份,而类传递的只是引用。
试验:
给Card方法添加一个方法,用来创建整服的纸牌。每张纸牌具有不同的花色和大小。
枚举成员的实例可以有实例自己的关联值(Associated values)。同样的枚举成员的各个实例可以有不同的关联值。关联值是在创建的时候提供的。关联值和原始值是不同的:枚举成员的原始值对于不同的实例来说是相同的,原始值是在定义枚举指定的。
例如:
-----来自戴维营教育 holyjoy
相关文章推荐
- Swift学习——A Swift Tour 枚举和结构体
- swift 笔记 (十) —— 属性 (类,结构体,枚举)
- Swift之旅(五)枚举与结构体
- Swift - 复杂数据类型说明(数组,字典,结构体,枚举)
- Swift详解之六----------------枚举、结构体、类
- VB.NET入门 - 数组、枚举和结构体
- Swift的结构体,枚举,可选Optional,可选链
- IOS开发语言Swift入门连载---枚举
- Swift语法基础:5 - Swift的枚举和结构体
- swift:入门知识之枚举和结构体
- swift 笔记 (十一) —— 方法(类,结构体,枚举)
- Swift 的类、结构体、枚举等的构造过程Initialization(上)
- swift菜鸟入门视频教程-09-类和结构体
- IOS开发语言Swift入门连载---类和结构体
- Swift入门教程系列8-枚举
- Swift语言学习4--枚举和结构体
- swift菜鸟入门视频教程-08-枚举
- Swift 的类、结构体、枚举等的构造过程Initialization(下)
- Swift入门(七)——结构体(Struct)
- iOS巅峰之Swift结构体和类, 枚举, 构造器, 继承, 协议, 扩展(完结篇)