Swift 一:基础类型知识

1).常量用let声明   let a : (NSString) = "hah"

      变量用var声明   var b : (Double) = 10.1

      在声明变量或者常量时候,如果给定初值,由于类型推断机制,可去掉后面括号的类型说明 :

      let   a = 10.1

     常量在初始化的时候必须给定初值,变量可不设定初值;

     swift是类型安全的,也就意味着只能对同类型进行加减等操作,且swift不支持隐式类型转换,比如

     let a : ( Int ) = 10

    let b : ( Double ) = 10.8

     _ = a + b 是不被允许的  ,需要类型统一 ,做显式转换_ = a + Int(b)

    //  Double 或者Float类型转为Int类型时候,小数点后面会省略掉

    (ps: _ 在swift代表缺省值


2).swift有真正的布尔类型,分为true和false


3).元组:

      元组是swift一种新的数据结构,可包含多种不同类型的值,形式为:(类型A,类型B,类型C...)

      元组创建形式1let student : (NSString , NSInteger , Double) = ("Mike" , 10 , 99)

      读取元组中的值可使用:对象.下标的形式  

      let name =  student.0

      如果要读取元组对象中的部分值,可借用缺省值 "_" ,例如:

      let  (name , age , _) = student

      let  name1 = name

      元组创建形式2let student  = (name : "Bill" , age : "11" , score : 89)

      读取元组中的值可使用:对象.下标的形式

      print(student.name)


4).可选值:optional

     可选值也是swift一种新类型,分为两种状态:有值和没有值(nil),构造形式:在初始化值的时候,在类型说明后面紧接着加“?”,

     例如: var optValue : Int? = 10

     可选值可使用if语句来进行判断,

例如:

let optValue : Int? = 10

if (optValue != nil) {

print("optValue has value")

}

    可选值可在其后面加“!”来强制解析,如:

var optValue : Int? = 10

let a : Int= optValue!

print(a)  //注意!!!:强制解析前一定要判断可选值是否有值,否则会crash掉

  可选值还有一种用法叫可选绑定,例如:

var optValue : Int?

if let a : Int = optValue {

print(a)

}      //注意!!!:推荐使用可选绑定来代替强制解析


5).隐式解析可选类型

  隐式解析可选类型类似于可选类型,也包括两种状态:有值和没有值(nil)

  声明语法:在变量声明类型的后面紧接着加“!” , 例如:

let optValue : Int! = nil

if (optValue != nil) {

print(optValue)

}

隐身可选解析不用加“!”来强制解析,但是同样需要判断是否为空,否则会crash掉

let optValue : Int! = 10

let b : Int = optValue

print(b)

 同样的,可选绑定语法为:

let optValue : Int! = 10

if let a : Int = optValue {

print(a)

}


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容