一、 Swift简介
Swift是Apple在2014年6月WWDC发布的全新编程语言,中文名和LOGO是“雨燕”。 到现在历时5年的发展,经历了多次重大改变,ABI(Application Binary Interface)终于稳定。ABI的稳定就意味着Swift语法今后基本不会再有太大的变动,现在是学习Swift的最佳时刻。Swift完全开源: https://github.com/apple/swift,主要采用C++编写。
- LLVM架构:
- OC的编译
iOS 开发中 Objective-C 是 Clang / LLVM 来编译的。 Clang是基于LLVM架构的C/C++/Objective-C编译器前端
一、常量
- 只能赋值一次
- 它的值不要求在编译时期确定,但使用之前必须赋值1次
let age:Int
func getAge() -> Int{
return 10;
}
age = getAge()
print(age)
二、数据类型
- 整数类型有:Int8、Int16、Int32、Int64、UInt8、UInt32、UInt64,一般情况下,都是直接用Int即可
- 浮点类型:Float,32位,精度只有6位;Double,64位,精度至少有15位。
let letDouble = 30.0//带小数点的数据,系统类型推导出来是Double类型的
let letfloat:Float = 30
三、类型转换
func test1() {
let a = 3;
let b = 10.4;
let result = a + b
}
func test2() {
let resultc = 3 + 10.4
print(resultc)
}
test1编译时就会报错,因为Swift中+、- 运算必须是同一数据类型,Swift中没有隐式转换必须手动强制转换成同一类型。如下面test3:
func test3() {
let a = 3;
let b = 10.4;
let result = Double(a) + b
}
test2编译和运行正常。因为3和10.4是字面量,字面量本身没有明确的类型,swift是允许这样直接相加的。
四、元组
元组仍然是一个变量,可以存储 N个 任意类型的数据
let defintuble:(Int,String) = (404,"NotFound")
print(defintuble.1)
let tuble = (404,"NotFound")
print(tuble.0)
let status = (code:204,message:"NotFound")
print(status.code)
print(status.1)
let (code,message) = (404,"NotFound")
print(code)
let(statuscode,_) = (404,"NotFound")
print(status)