Swift学习二
// 定义枚举方式一
enum Season {
// 每个case定义一个实例
case Spring
case Summer
case Fall
case Winter
}
// 定义枚举方式二
enum Weekday {
// 使用一个case列出所有枚举实例
case Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday
} // 使用枚举声明变量
var day : Weekday
// 使用已有的枚举实例赋值
day = Weekday.Sunday
day = .Wednesday // 自动推断为Weekday类型 // 枚举与switch语句一起使用
var chooseDay = Weekday.Saturday
switch chooseDay {
case .Monday:
print("Monday")
case .Tuesday:
print("Tuesday")
case .Friday:
print("周五")
// 如果没有列举出所有的情况,需要在最后加入一个default来处理其他情况的默认处理
default:
print("other day")
}
// 原始值
/* enum 枚举名 : 原始值类型 {
case 枚举值 = 原始值
} */
enum WeekdayHasRawValue: Int {
case Monday, Tuesday = 1, wednesday = 5, Sunday
} enum SeasonHasRawValue: Character {
case Spring = "S"
case Summer = "U"
case Fall = "F"
case Winter = "W"
}
var aDay = WeekdayHasRawValue.Sunday
print(".Sunday的原始值为:\(aDay.rawValue)")
var mySeason = SeasonHasRawValue.init(rawValue: "S")
// 可能失败的构造器,所以这里要用if let 可选绑定来判断
if let s = mySeason {
switch s {
case .Spring:
print("Spring")
default:
print("not Spring")
}
}
Swift学习二的更多相关文章
- swift学习二:基本的语法
声明本文转载自:http://www.cocoachina.com/applenews/devnews/2014/0603/8653.html Swift是什么? Swift是苹果于WWDC 2014 ...
- 【swift学习笔记】二.页面转跳数据回传
上一篇我们介绍了页面转跳:[swift学习笔记]一.页面转跳的条件判断和传值 这一篇说一下如何把数据回传回父页面,如下图所示,这个例子很简单,只是把传过去的数据加上了"回传"两个字 ...
- iOS ---Swift学习与复习
swift中文网 http://www.swiftv.cn http://swifter.tips/ http://objccn.io/ http://www.swiftmi.com/code4swi ...
- Swift学习与复习
swift中文网 http://www.swiftv.cn http://swifter.tips/ http://objccn.io/ http://www.swiftmi.com/code4swi ...
- 今天开始Swift学习
今天开始Swift学习 在此记录笔记 以备之后查阅! allenhuang
- emberjs学习二(ember-data和localstorage_adapter)
emberjs学习二(ember-data和localstorage_adapter) 准备工作 首先我们加入ember-data和ember-localstorage-adapter两个依赖项,使用 ...
- 12套swift学习资源分享
虽然objective-c编程语言在过去很长一段时间都是iOS应用开发的基础语言,且很多iOS开发者对其也深爱有佳,但是随着swift编程语言的问世,迅速发展为开发者追捧的语言.且今年伴随着swift ...
- ReactJS入门学习二
ReactJS入门学习二 阅读目录 React的背景和基本原理 理解React.render() 什么是JSX? 为什么要使用JSX? JSX的语法 如何在JSX中如何使用事件 如何在JSX中如何使用 ...
- TweenMax动画库学习(二)
目录 TweenMax动画库学习(一) TweenMax动画库学习(二) TweenMax动画库学习(三) Tw ...
随机推荐
- Django form 中文提交 错误
在文件头部添加 刻解决 import sys reload(sys) sys.setdefaultencoding("utf-8")
- react.js 之 批量添加与删除功能
最近做的CMS需要用到批量添加图片的功能:在添加文件的容器盒子内,有两个内容,分别是:添加按钮与被添加的选择文件组件. 结构分析: 被添加的组件,我们称为:UploadQiNiuFiles(七牛文件上 ...
- java:提示Could not initialize class sun.awt.X11GraphicsEnvironment
前几天发现tomcat提示 Could not initialize class sun.awt.X11GraphicsEnvironment 问题.以为不验证,就没太关注,今天发现,有同事提示了个 ...
- 绑定: x:Bind 绑定, x:Bind 绑定之 x:Phase, 使用绑定过程中的一些技巧
背水一战 Windows 10 之 绑定 x:Bind 绑定 x:Bind 绑定之 x:Phase 使用绑定过程中的一些技巧 示例1.演示 x:Bind 绑定的相关知识点Bind/BindDemo.x ...
- linux下使用 du查看某个文件或目录占用磁盘空间的大小
du -ah --max-depth=1 这个是我想要的结果 a显示目录占用的磁盘空间大小,还要显示其下目录和文件占用磁盘空间的大小但是由于用了--max-depth选项,表示显示目录下所有 ...
- [bzoj1009][HNOI2008]GT考试
Description 阿申准备报名参加考试,准考证号为位数,他不希望准考证号上出现不吉利的数字. 他的不吉利数学有位,不出现是指中没有恰好一段等于. 可以为. Input 第一行输入.接下来一行输入 ...
- js-JavaScript高级程序设计学习笔记6
第八章 BOM 1.BOM的核心对象是window,他表示浏览器的一个实例.在浏览器中,window对象有双重角色,它既是通过JS访问浏览器窗口的一个接口,又是ES规定的Global对象. 2.定义全 ...
- 基于Maven引入Hadoop包报Missing artifact jdk.tools:jdk.tools:jar:1.6
一.问题来源 <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop- ...
- SQLServer日期格式化
0 或 100 (*) 默认值 mon dd yyyy hh:miAM(或 PM) 1 101 美国 mm/dd/yyyy ...
- Linux File System Change Monitoring Technology、Notifier Technology
catalog . 为什么要监控文件系统 : hotplug . udev . fanotify(fscking all notification system) . inotify . code e ...