Swift one

版权声明:本文为博主原创文章,转载请注明,谢谢! https://blog.csdn.net/qq_33646395/article/details/78709735


Swift 继OC(objective-c)  后一门开发iOS 应用的语言,学习随笔one:


   关键字

Swift 的关键字大致可分以下4类,开发定义标识符时请尽量避开,一定要用就` class` 这样

1.声明相关的关键字:class 、deinit、enum、extension、func、import、init、internal、let、operator、private、protocol、public、static、struct、subscript、typealias、var.

2.语句相关的关键字:break、case、continue、default、do、else、fallthrought、for、if、return、switch、where、while.

3.类型、表达式相关的关键字:as、dynamicType、false、is、nil、self、Self、super、ture、_COLUMN_、_FILE_、_FUNCTION_、_LINE_.

4.特定上下文相关的关键字:associativity、convenience、dynamic、didSet、final、get、infix、inout、lazy、left、mutating、none、nonmoutating、optional、override、postfix、precedence、perfix、Protocl、required、right、set、Type、unowned、weak、willSet.


声明变量和常量

Swift 要求所有的变量和常量必须先声明后使用,声明变量时必须显示或隐式指定变量的类型,类型限制了一个变量能被赋的值,也限制了一个表达式能产生的值,还限制了在这些值上能做的操作,并确定了这些操作的含义:

var 变量名:[类型] [=初始值]

在上面这个声明变量语法格式中,要么通过“:[类型]”的形式指定变量的类型,要么为改变了赋予初始值——swift 编译器将会根据初始值确定改变量的类型,不能声明变量时既不指定类型,也不赋予指定的初始值。声明变量时既可以指定类型,也可以该变量的初始值,但显示的变量初始值必须要与指定类型保持一致。

e.g: 
//声明变量时指定类型
var b :Int 
// 声明变量时指定初始值,编译器会根据指定的初始值确定该变量为String 型       
var name = "wsq"
//声明成功
b = 20
//声明失败
name = 20

//声明类型和初始化类型不一致,会导致声明出错
var age : Int = "20"

//同时声明多个变量,不需要变量的类型相同
var a = 20 , d : String , c = "string"


swift 中常量的声明用let,用法和变量var 一样,最大却别在于,let 声明的常量不可更改值;


Int: 未专门指定整型的长度,灵活自对应;
Int8 :整型数在内存里通常占8位,表数的范围是:-128(-2^7)~ 127 (-2^7  - 1)
Int16 :整型数在内存里通常占16位,表数的范围是:-36728(-2^15)~ 32767 (-2^15  - 1)
Int32 :整型数在内存里通常占32位,表数的范围是:-2147483648(-2^31)~2147483647 (-2^31  - 1)
Int64 :整型数在内存里通常占32位,表数的范围是:(-2^63)~ ( 2^63 - 1)

swift 的整数数值4种表达方式:
十进制:最普通的整数就是十进制数;
二进制:以0b开头的整数就是二进制数;
八进制:以0o开头的整数就是八进制数;
十六进制:0x开头的整数就是十六进制数,其中10~15 分别以a~f表示,不区分大小写


Bool 布尔类型,用于表示逻辑上的真假, swif 中Bool 类型只能是ture和false,不能用0和非0来表示,其他数据类型不能转化为Bool类型;这一点和OC上不一样!
e.g
var i = 1
if i {

     // 这里会编译报错
}

var i = 1
if i == 1{

     // 这里会编译不会报错, 通过编译
}

第一个if中期待的是一个Bool类型的值,但i是Int 型的,所有会报错,无法通过编译,而第二个if中 i== 1比较的结果就是个Bool型的,所以能通过编译。

猜你喜欢

转载自blog.csdn.net/qq_33646395/article/details/78709735
one
今日推荐