swift语言学习笔记(1)

1、数据类型
swift有整型Int、浮点型Double和Float、布尔型Bool、字符串String,还有新增的集合类型Array和Dictionary。

2、声明类型
变量、常量、元组、可选,后两种是新增类型,有具体使用场景。

3、swift特点是类型安全特点,如果声明数据类型是String,若传入Int类型,则编译报错,需要强制转换同一个类型。

同时,可以类型标注,明显标注变量或常量的类型:

var weatherString : String = "fine"

通常不一定强制标注类型,swift自动判断其类型

疑问:变量初次赋值后,swift判定其类型,其后修改类型是否出现错误?


4、常量声明方式是let,常量就是不会再变化的值,一旦值被确定就不能更改。
let languageName = "swift"
疑问:可以声明先不赋值?答:可以的,一旦赋值swift自动类型检测


5、用var来声明变量

新增命名方式:可以反引号+关键字可以作为变量和常量,注意不推荐这样命名方式

6、逗号:一行可以声明多个变量和常量并以逗号隔开

7、输出与占位符
println("hello world") //Xcode打印台输出 hellp world
如果输出变量或常量值,斜杠加括号 \(变量或常量)

8、注释:可以嵌套注释

9、整数:提供了8、16、32、64位的有符号和无符号整数类型。
如使用命名方式UInt8/Int8
整数范围可以使用:
let minValue = UInt8.min
let maxValue = UInt8.max
Int类型会根据当前平台(32或64位),其范围而变化。如指定类型范围,导致程序不同平台兼容性。


10、类型转换有不同情况需要显式进行数据类型转换:
(1)同一样类型不同范围,导致数据溢出

(2)不同类型转换,如整型转换字符串

let numOne : Int = 1
let numTwo : Double = 1.2
let sumResult = (Double)numOne + numTwo



11、类型可以其别名,关键字typealias
typealias AudioSample = UInt16

12、元组 :括号+数据
声明元组
let http404Error = ( 404 , "Not Found" )
let http200Status = ( statusCode : 200 , msg : "OK" )

其他形式 ( Int , Bool , Int ) ( String , String , Int )


读取元组数据:
   let ( statusCode , msg ) = http404Error
  println("The status code is \(statusCode)")
可以用下标访问分组中某个元素,从零开始
println("\(http404Error.0)")
同样通过元素命名,获取数据
println("The status code is \(http200Status.statusCode)")

同时可以忽略一部分元组值,加上下划线
let ( statusCode , _ ) = http404Error

注意:数据结构不是临时使用,不要使用元组而使用类或者结构


13、可选使用场景是来处理值可能缺少的情况
表现形式当字符串转换整数时,转换数据有可能成整数,或失败,
所以返回可选值 类型+?

如何使用可选值?

用if语句进行判定一个可选值,如果有值,则true,否则false
也可以强制解析可选值(可选值+!),不过你要确定可选值是有值(非nil)


可选绑定:把可选值赋值一个临时常量或者变量,进行if判断
如果为true,就可以不用强制解析可选值


14、nil不能用于非可选的常量和变量
声明可选变量或常量,若没有赋值自动设置nil
var tempVarData : String?

注意:在swift中,nil不是指针,是一个确定的值,用来表示值缺失


15、隐式解析可选,如果可选确定有值,声明可以
let iknowValue : String! = "ok"

println("\(iknowValue)")


注意:此值为nil,则会报错


16、断言:用于调试程序来找值的缺失,如果是false,结束执行代码,打印自定义信息
assert( 逻辑判断 true/false , 字符串/可以省略)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值