iOS-Swift-基础语法简介

167 阅读3分钟

##一. 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 使⽤可选绑定,直接访问