一. Hello World
不用编写main函数,Swift将全局范围内的首句可执行代码作为程序入口。
一句代码尾部可以省略分号,多句代码写到同一行时必须用分号隔开。
用var定义变量,let定义常量,编译器能自动推断出变量\常量的类型。
Playground可以快速预览代码效果,是学习语法的好帮手 。
Command + Shift + Enter:运行整个Playground。
Shift + Enter:运行截止到某一行代码。
二. Playground
关于Playground有一个好用的快捷键,可以利用Command+0显示和隐藏左边栏,如下图:
Playground.png如上图,Sources是放Swift代码文件的,Resources是放资源文件的。
另外Playground还能进行UIView的展示(要导入PlaygroundSupport),如下图:
图片.png一个Playground可以创建多个Page,创建方式为在MyPlayground上右击选择New Playground Page,如下图:
New Playground Page.png创建Page2之后,Page2也有Sources和Resources,这里的Sources和Resources只有当前Page可用,如果是外面的Sources和Resources就可以整个Playground可用。
- 关于Playground的注释
支持注释嵌套:
注释Playground的注释支持markup语法(与markdown相似),开启markup的方法如下:
开启markup注释写完之后,开启markup渲染效果:Editor -> Show Rendered Markup
注意:Markup只在Playground中有效
markup示例以及效果图如下:
效果图Playground内置的上下页跳转:
跳转三. 常量
只能赋值1次。
它的值不要求在编译时期确定,但使用之前必须赋值1次。
如上,age1、age2是在编译时就确定了,但是age3在运行时才知道值,Swift支持这样的操作。
常量、变量在初始化之前,都不能使用,因为Swift是为了确保代码的安全性。如下代码会报错:
未初始化下面代码是错误的:
没有确定类型上面代码,因为没有确定类型所以报错,要么指定类型,要么直接赋值。
四. 标识符
标识符(比如常量名、变量名、函数名)几乎可以使用任何字符。
标识符不能以数字开头,不能包含空白字符、制表符、箭头等特殊字符。
五. 常见数据类型
看下图:
常见数据类型整数类型:Int8(1字节)、Int16(2字节)、Int32(4字节)、Int64(8字节)、UInt8(无符号1字节)、UInt16(无符号2字节)、UInt32(无符号4字节)、UInt64(无符号8字节) 。
在32bit平台,Int等价于Int32;在64bit平台, Int等价于Int64。
查看整数的最值:UInt8.max、Int16.min。
一般情况下,都是直接使用Int即可。
浮点类型:Float,32位,精度只有6位;Double,64位,精度至少15位,默认是Double类型。
浮点类型可能你会想把Int定义成结构体占用的内存空间不是多了嘛!效率不就低了嘛!其实不是的,苹果内部是有优化的,而且定义成结构体方便了很多,比如可以携带属性(上面的UInt8.max、Int16.min)。
五. 字面量
字面量.png注意:字符类型和字符串类型都是使用" ",默认是字符类型,所以如果想要定义成字符类型,必须加上类型:Character,如上图所示。
六. 类型转换
类型转换七. 元祖
元祖一般推荐使用最后一种方式来定义元祖。
访问元祖成员的三种⽅式:
1.http404Error.0 使⽤.0访问元祖的元素
2.http404Error.statusCode 使⽤标签访问元祖的元素
3.statusCode 使⽤可选绑定,直接访问
网友评论