一.基本类型/The Basics
前言:
前段时间大概看了Python的教程,给我最深的感触,还是另外一门语言给你带来的对一门语言设计模式的思考,那些平时习惯敲出来的语句,都有其设计的巧妙,这样对语言的认识,有一些更深入的理解
所以是时候来看看swift了,跟着官网上的教程,一步一步看
常量与变量1.声明常量与变量
现在跟之前在定义常量变量有很大区别,之前是什么类型就用什么类型来修饰,现在只分常量变量,常量用let 变量用var,具体的类型根据赋值来自动判断
教程中解释:不变的值,需要用let来修饰,比如最大登录数是不变的,而当前登录数是可变的,用var
补充一点:关于标点符号的,之前语句结束后需要用分号结束,现在不需要了,定义多个值可以这样:
定义多个变量2.注释(类型)
定义一个常量或变量两种方式,一种是直接指定初始值,系统回去推算类型,一种就是如下,没有给初始值,那就需要指定类型:
类型注释定义多个注释的时候
多个类型注释3.打印print
打印不再使用nslog,用print,格式如下:
打印基本格式就是,\(...)去转义,包括int等类型,不需要再去记转义字符%@/%ld/%f等
4.注释
一般使用 // 及 /* ... */与之前没什么不同,特别注意是,现在的多行注释可以嵌套注释,就是多行注释中可以有已经存在的多行注释:
多行注释嵌套整型8位等最大最小值5.整型,有8 ,16 ,32 ,64位等
一般情况下,不需要去指定int的大小,另:Uint用于无符号整数类型
整型位数浮点数6.float浮点数,double是首选
7.运算转换
浮点与整数变量的运算,在加double();之前是(double)
运算8.别名
typealias:可以给现有类型取别名
别名布尔值9.布尔值Bool
布尔值只有两个值,一个true 一个false,这跟oc有不同的地方
10.元组
元组有多个值组成的一个"复合值",里面的元素可以是任何类型,用小括号括起来,可以用下标访问,如果取了名字也可以用名字访问,代码如下:
元组定义 取值其他用法:
元素使用11.可选类型
可选类型,是接收的数据有可能为空,在swift中,数据定义是就必须确定是否为空,空的话,需用可选类型表示(?),如下:
int()转出来的值有可能为空,多以convertedNumber,需定义为可选类型注意:
Swift 的 nil与Objective-C不一样。在Objective-C中,nil是一个指向不存在对象的指针。在Swift中,nil不是一个指针 - 它是没有某种类型的值。任何类型的可选项都可以设置为nil,而不仅仅是对象类型。
定义一个变量,如果,它有可能为空的话,就需要定义成可选类型
可以给定初始值 也可以不给定初始值,默认为nil11.1可选类型的强制展开
一旦您确定可选项确实包含值,您可以通过!在可选名称的末尾添加感叹号()来访问其基础值。感叹号有效地说:“我知道这个选择肯定有价值;请使用它。“这被称为强制展开可选的值:
强制展开11.2可选绑定
解释:当Int(possibleNumber)不为nil时,让actualNumber接收值,并且actualNumber是个局部变量,只作用于第一个大括号中
if后面也可以有多个判断赋值,用逗号(,)隔开
可选类型11.3隐式解析可选类型
隐式解析可选类型,介于可选类型与不可选类型之间,他属于可选类型,因为,它可以为nil,但是他可以赋值给不可选类型,而不用加"!",或者可选绑定等
相当于说,没错!我是可选类型,但是不用每次都给我加感叹号
隐式可选类型错误捕捉12.错误处理
断言13.断言