标签:
“Swift 是一种新的编程语言,用于编写 iOS,OS X 和 watchOS应用程序。Swift 结合了 C 和 Objective-C 的优点并且不受 C 兼容性的限制。Swift 采用安全的编程模式并添加了很多新特性,这将使编程更简单,更灵活,也更有趣。Swift 是基于成熟而且倍受喜爱的 Cocoa 和 Cocoa Touch 框架,它的降临将重新定义软件开发。
常量和变量
func demo3() {
// 仅仅定义了类型,并没有设置数值
let x: Int
// 常量定义完成类型后,可以有`一次`设置机会
x = 10
// 设置之后,不允许再修改
// x = 20
// Constant 'x' used before being initialized
// 常量在使用之前,必须要做初始化
print(x)
}
/// 如果定义的变量/常量需要指定自己需要的类型,可以使用 `:类型`
func demo2() {
let x: Double = 10
let y = 10.5
print(x + y)
}
/// 自动推导 - 可以根据右侧的计算结果,推导出左侧变量/常量的类型
/// Option + Click 热键非常重要,可以快速查看变量的准确类型
/// 但是:Swift 对类型转换要求非常严格,任何不同类型之间的数据,不允许计算
/// Int 和 Double 都是结构体,而 不是基本数据类型!
func demo1() {
// 整数默认类型是 Int,如果 64 位机器,long/32 位机器就是 int
let x = 10
// Swift 中,小数默认是 Double,双精度,精度更高
// OC 默认是 float,浮点数
let y = 10.5
// Binary operator '+' cannot be applied to operands of type 'Int' and 'Double'
// print(x + y)
// 如果要给不同类型的数据进行计算,必须手动转换类型
// OC 中如果要做类型转换 `(int)y`
// Swift中,使用的是 `Int()` 构造函数 `init`
print(x + Int(y))
print(Double(x) + y)
}
func demo() {
// 定义常量 let,一旦设置,不能修改
// 定义变量 var,一旦设置,可以修改
// int x = 10;
let x = 10
// x = 20
var y = 20
y = 100
print(x)
print(y)
}
知识点整理
常量与变量的定义
定义常量 let,一旦设置,不能修改;定义变量 var,一旦设置,可以修改
let x = 10
// x = 20 // 常量无法修改
var y = 20
y = 100
整数与小数的默认类型
整数默认类型是 Int,如果 64 位机器,long/32 位机器就是 int 小数默认是 Double,双精度,精度更高
不同数据类型之间的计算,需要注意什么
Swift 对类型转换要求非常严格,任何不同类型之间的数据,不允许计算,必须手动转换类型
let x = 10
let y = 10.5
// Binary operator '+' cannot be applied to operands of type 'Int' and 'Double'
// print(x + y)
// 如果要给不同类型的数据进行计算,必须手动转换类型
// OC 中如果要做类型转换 `(int)y`
// Swift中,使用的是 `Int()` 构造函数 `init`
print(x + Int(y))
print(Double(x) + y)
自动推导是什么
可以根据右侧的计算结果,推导出左侧变量/常量的类型
// 因为10 默认是Int类型的,推导出x的类型是Int
let x = 10
// 因为10.5 默认是Double类型的,推导出y的类型是Double
let y = 10.5
option + Click 热键非常重要,可以快速查看变量的准确类型
显示的指定常量或变量的类型
如果定义的变量/常量需要指定自己需要的类型,可以使用 :类型
// 显示指定x的类型是Double,使用 :类型
let x: Double = 10
常量和变量的使用注意
常量或变量在使用之前,必须要做初始化
let x: Int
// 没有初始化,会报异常:Constant 'x' used before being initialized
print(x)
常量定义完成类型后,可以有一次设置机会,常量设置之后,不允许再修改
let x: Int
// 常量定义完成类型后,可以有`一次`设置机会
x = 10
// 常量设置之后,不允许再修改
// x = 20
常量和变量的选择
只有在需要改变的时候,才应该使用 var
如果从来没有变过的变量,Xcode 会提示使用 let
Int 和 Double的本质是什么
结构体
Constant 'x' used before being initialized(常量在使用之前,必须要做初始化) Binary operator '+' cannot be applied to operands of type 'Int' and 'Double' (+ 不能 应用在 Int 类型 和 Double类型) 补充: 所有的Swift基本数据类型都是结构体 Int Double Bool String Float Swift中只要是常量就用let,只要是变量就用var
标签:
原文地址:http://blog.csdn.net/qq_32166767/article/details/51335508