iOS - Swift Enum 枚举
1、Enum 的创建
1.1 标准定义
枚举的定义
enum CompassPoint { case North case South case East case West } enum Planet { // 多个成员的值出现在一行上 case Mercury, Venus, Earth, Mars, Jupiter, Saturn, Uranus, Neptune }
枚举的使用
// direction 的类型是已知的,所以可以在设定它的值时,不写该类型 var direction:CompassPoint = .West // 如果 switch 的条件声明在同一个函数内,这时会提示 Switch condition evaluates to a constant, // 要去除这个,只需要将声明的变量放在函数外就可以 switch direction { case .North: print("Lots of planets have a north") case .South: print("Watch out for penguins") case .East: print("Where the sun rises") case .West: print("Where the skies are blue") }
1.2 关联值定义
枚举的定义
enum Barcode { // 每个枚举成员设定一个或多个关联值 case UPCA(Int, Int, Int) case QRCode(String) }
枚举的使用
var productBarcode1:Barcode = .UPCA(8, 85909_51226, 3) var productBarcode2 = Barcode.QRCode("ABCDEFGHIJKLMNOP") switch productBarcode1 { case .UPCA(let numberSystem, let identifier, let check): print("UPC-A with value of \(numberSystem), \(identifier), \(check).") case .QRCode(let productCode): print("QR code with value of \(productCode).") } switch productBarcode2 { // 如果所有的枚举成员的关联值的提取为常数,或者当所有被提取为变量, // 为了简洁起见,可以放置一个 var 或 let 标注在成员名称前 case let .UPCA(numberSystem, identifier, check): print("UPC-A with value of \(numberSystem), \(identifier), \(check).") case let .QRCode(productCode): print("QR code with value of \(productCode).") }
1.3 原始值定义
枚举的定义
// 带原始值的定义格式 enum Seasons:Int { case spring = 1 case summer case autumn case winter }
枚举的使用
var seas = Seasons.spring // 获取枚举成员的原始值 print(seas.rawValue) // 找到一个特定的原始值枚举成员 seas = Seasons(rawValue: 3)! print(seas.rawValue)
iOS - Swift Enum 枚举的更多相关文章
- Swift Enum 枚举
前言 枚举是一种自定义的数据类型,在 Swift 中枚举类型拥有相当高的自由度.在 Swift 语言中枚举是一级类型,它拥有在其他语言中只有类才拥有的一些特性,比如实例方法,实例构造器等. 枚举声明的 ...
- iOS - OC Enum 枚举
前言 iOS 5.0 之后,提供了新的枚举定义方式,定义枚举的同时,可以指定枚举中数据的类型. typedef NS_OPTIONS(_type, _name) new; -> 位移的,可以使用 ...
- Swift enum(枚举)使用范例
//: Playground - noun: a place where people can play import UIKit var str = "Hello, playground& ...
- iOS - Swift 与 C 语言交互编程
前言 作为一种可与 Objective-C 相互调用的语言,Swift 也具有一些与 C 语言的类型和特性,如果你的代码有需要,Swift 也提供了和常见的 C 代码结构混合编程的编程方式. 1.基本 ...
- Swift 中枚举
Swift 中枚举高级用法及实践 字数11017 阅读479 评论0 喜欢20 title: "Swift 中枚举高级用法及实践"date: 2015-11-20tags: [AP ...
- swift 的枚举、结构体、类
一.Swift的枚举 枚举是一系相关联的值定义的一个公共的组类型,同时能够让你在编程的时候在类型安全的情况下去使用这些值.Swift中的枚举比OC中的枚举强大得多, 因为Swift中的枚举是一等类型, ...
- iOS - Swift Foundation 框架
前言 框架是由许多类.方法.函数和文档按照一定的逻辑组织起来的集合,以使研发程序更容易. Foundation 框架:为所有程序开发奠定基础的框架称为 Foundation 框架. Cocoa :是指 ...
- iOS - Swift 基本语法
前言 Swift 全面支持 Unicode 符号. Swift 中的定义和实现是在同一个单元中的,通常一个 Swift 源代码单文件是以 ".Swift" 结尾的. Swift 不 ...
- ios Swift 动手写
Swift语言概览 基本概念 注:这一节的代码源自The Swift Programming Language中的A Swift Tour. Hello, world 类似于脚本语言,下面的代码即是一 ...
随机推荐
- tr DEMO
测试数据: [weblogic@etp-mall-dev7][/tmp]$ cat msn.txt aaa bbb bbb ccc ccc ddd bbb eee aaa ccc bbb sss 转换 ...
- 20145227 《Java程序设计》第7周学习总结
20145227 <Java程序设计>第7周学习总结 教材学习内容总结 第十二章 Lambda 如果使用JDK8的话,可以使用Lambda特性去除重复的信息. 在只有Lambda表达式的情 ...
- MySQL数据类型总结
MySQL中的数据类型大的方面来分,可以分为:日期和时间.数值,以及字符串.下面就分开来进行总结. 日期和时间数据类型 MySQL数据类型 含义 date 3字节,日期,格式:2014-09-18 t ...
- 2015-11-04 asp.net 弹出式日历控件 选择日期 Calendar控件
html代码: <%@ Page Language="C#" CodeFile="calendar.aspx.cs" Inherits="cal ...
- Counterfeit Dollar 分类: POJ 2015-06-12 15:28 19人阅读 评论(0) 收藏
Counterfeit Dollar Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 41559 Accepted: 13 ...
- sql查询某条记录
select * from (SELECT t.*,ROWNUM AS RN FROM AWARDISSUE_FOOTBALL t ORDER BY ID DESC) WHERE RN=2
- centos6.5版本改系统语言成中文简体
root:locale -a 查看系统支持的语言,如果看到这个zh_CN.utf8(这是中文简体)说明系统支持此语言 root:vim /etc/sysconfig/i18n(编辑语言的配置文件) 输 ...
- 第十四章:高级I/O
14.1:引言 本章内容包括非阻塞I/O.记录锁.系统V流机制.I/O多路转接(select和poll函数).readv和writev函数以及存储映射I/O(mmap),这些都称为高级I/O. 14. ...
- winform中利用反射实现泛型数据访问对象基类(1)
考虑到软件使用在客户端,同时想简化代码的实现,就写了一个泛型的数据访问对象基类,并不是特别健全,按道理应该参数化的方式实现insert和update,暂未使用参数化,抽时间改进. /// <su ...
- sql重新排序
declare @i int select @i = 10 update dbo.T_StartEndCode set @i = @i+1,OrderNumber = @i