赋值的时候要想为空 可以用 ? 例如
var age1:Int? // ?表示age1的类型为可选类型,其值可以为空
print(age1)
判断一个字符串为空字符串
if str_empty.isEmpty {
print("str_empty is empty")
}
获取字符串的长度
string1.characters.count
// switch形式使用fallthrough实现贯穿每种可能
case 可以使用(let和var修饰的常量或者变量) where是满足某种条件
enum Direction:Int {
case east = 0
case south = 1
case west = 2
case north = 3
}
print(Direction.east.rawValue) // rawValue就是找到相对应枚举的原始值
inout 类似于指针 修饰的类型可改变他的值
// 外部参数和内部参数
// first second 是外部参数 在函数调用的时候会显示这两个名称
// one two 是内部参数:在函数内部使用的
// 默认的情况下,第一个外部参数在调用的时候不显示,其余的都显示
func function6(first one:Int, second two:Int) {
print((one, two))
}
function6(first: 10, second: 2)
结构体中不存在 class (类方法)
struct student9 {
var name:String?
static func sayEat() {
print("eat")
}
}
子类继承父类的方法重写需要加 override
class Person1 {
func canEat() {
print("吃饭")
}
}
class Man1: Person1 {
override func canEat() {
print("不吃饭")
}
}
let man1:Man1 = Man1()
man1.canEat()
extension 是扩展的意思 不能扩展属性