//完整格式:修饰符(let/var) 常量/变量名称:数据类型
let number: Int
var value: Double
number = 10
value = 20
注意:常量一旦初始化就不能再修改里面的值
- 如果在定义一个常量或者变量的同时, 给这个常量或者变量进行了初始化, 那么数据类型可以不写,编译器会自动推断类型.
- 如果初始值没有提供足够的信息(或者没有初始值),需要在变量后面声明类型,用冒号分割.
let myFloat :Float
- Swift是类型安全的语言, 在任何情况下都不会进行自动类型转换(隐式类型转换), 所有的转换都是显示的,也就是意味着只有相同类型的值才能进行赋值
let n3: Int = Int(10.1)
let n4: Double = 10
// 哪怕是CGFloat和Double之间也不行, 也必须进行转换
let rect = CGRect(x: 0, y: 0, width: 100, height: 100)
//let n5: Double = rect.width
let n5 = 10
let n6 = 10.1
//let sum = n5 + n6//会报错,因为n5和n6类型不同
let num1 = 10
let num2 = 3;
//2.1 方法一:String(num1 + num2)
let printStr = "I have " + String(num1 + num2) + " apples"
//2.2 方法二:\(num1 + num2)
let printStr2 = "I have \(num1 + num2) apples"
注意:
- Swift中可以不写;号, 但是有一定的前提条件, 一行只有一句代码
- 如果一行有多句代码, 那么;还是必须写
- Swift变态的地方, 有时候运算符的左右如果没有写空格就会报错
- 技巧:
- 在Swift开发中, 我们最常见的一个操作就是按住 option + click 查看变量/方法的说明
- 在Swift开发中, 能不写类型就不写类型, 减少冗余代码
- 在Swift开发中, 苹果推荐我们先定义常量, 只有需要修改的时候才定义变量