一、Swift语言介绍
-
Swift 是苹果2014年推出的全新的编程语言,它继承了C语言、ObjC的特性,且克服了C语言的兼容性问题。
-
Swift 发展过程中不仅保留了ObjC很多语法特性,它也借鉴了多种现代化语言的特点,在其中你可以看到C# 、Java 、Javascript 、Python 等多种语言的影子。
- 在2015年的WWDC上,苹果还宣布Swift的新版本
Swift2.0 ,并在之后宣布Swift 开源,除了支持iOS、OS X之外还将支持Linux。
-
Swift 语言是苹果强推的一种编程语言,未来可能会取代ObjC的地位。
这里不会从零基础一点点剖析这门语言的语法,旨在帮助大家快速从ObjC 快速过渡到Swift 开发中,入门初学可以参考The Swift Programming Language中文手册和Swift系列学习推荐
Xcode从6.0开始加入了Playground 代码测试,可以实时查看代码执行结果,如果还没有Xcode6以上的,可以使用在线Swift编译网站调试:Swift在线编译网站
二、Swift基础部分
1. 第一个Swift程序
import Foundation
-
Swift 没有main函数,第一个非声明语句开始执行,表达式或者控制结构,类、结构体、枚举和方法等属于声明语句。
-
Swift 通过import 引入其他类库,和Python 语言的导入很像。
-
Swift 语句不需要双引号结尾(尽管加上也不报错),除非一行包含多条语句,也和Python 有点类似。
2. 数据类型
Swift包含了C和ObjC语言中的所有基础类型,还增加了一些高阶类型
- 基础类型:
-
Int 整形和UInt 无符号整形
-
Float 和Double 浮点型
-
Bool 布尔型
-
Character 字符型
-
String 字符串类型
- 枚举类型
enum 和结构体类型struct
- 集合类型
-
Array 数组
-
Set 集合
-
Dictionary 字典
- 高阶数据类型
3. 基础类型使用
import Foundation
var intValue:Int = 1
-
Swift 通过var 进行变量定义,通过let 进行常量定义(这和JavaScript 类似)
-
Swift 添加了类型推断,对于赋值的常量或者变量会自动推断其具体类型
-
Swift 是强类型语言,不同的数据类型之间不能隐式转化,如果需要转化只能强制转化
- 在
Swift 中类型转换直接通过其类型构造函数即可,降低了API的学习成本
4. 集合类型使用
5. 元组使用
元组就像是不能修改的数组一样,元组中的值是不能修改的,不过元组内的值可以使任意类型,并不要求是相同类型,这一点和数组不同
6. 可选类型使用
上面的类型定义的常量或变量初始化都必须有值,而可选类型暗示了常量或者变量可以没有值
-
Swift 中类似于Int 和Int? 并不是同一种类型,不能进行相关运算,如果要运算只能用感叹号解包;
- 可选类型其本质,就是此类型内部存储分为
Some 和None 两个部分,如果有值则存储到Some 中,没有值则为None ,使用感叹号强制解包的过程就是取出Some 部分;
- 如果一个可选类型从第一次赋值之后就能保证有值,那么使用时就不必进行强制解包了,这种情况下可以使用隐式可选解析类型
|
请发表评论